Module aws_lambda_powertools.utilities.data_classes.cloud_watch_custom_widget_event
Classes
class CloudWatchDashboardCustomWidgetEvent (data: dict[str, Any], json_deserializer: Callable | None = None)
-
CloudWatch dashboard custom widget event
You can use a Lambda function to create a custom widget on a CloudWatch dashboard.
Documentation:
Parameters
data
:dict[str, Any]
- Lambda Event Source Event payload
json_deserializer
:Callable
, optional- function to deserialize
str
,bytes
,bytearray
containing a JSON document to a Pythonobj
, by default json.loads
Expand source code
class CloudWatchDashboardCustomWidgetEvent(DictWrapper): """CloudWatch dashboard custom widget event You can use a Lambda function to create a custom widget on a CloudWatch dashboard. Documentation: ------------- - https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/add_custom_widget_dashboard_about.html """ @property def describe(self) -> bool: """Display widget documentation""" return bool(self.get("describe", False)) @property def widget_context(self) -> CloudWatchWidgetContext | None: """The widget context""" if self.get("widgetContext"): return CloudWatchWidgetContext(self["widgetContext"]) return None
Ancestors
- DictWrapper
- collections.abc.Mapping
- collections.abc.Collection
- collections.abc.Sized
- collections.abc.Iterable
- collections.abc.Container
- typing.Generic
Instance variables
prop describe : bool
-
Display widget documentation
Expand source code
@property def describe(self) -> bool: """Display widget documentation""" return bool(self.get("describe", False))
prop widget_context : CloudWatchWidgetContext | None
-
The widget context
Expand source code
@property def widget_context(self) -> CloudWatchWidgetContext | None: """The widget context""" if self.get("widgetContext"): return CloudWatchWidgetContext(self["widgetContext"]) return None
Inherited members
class CloudWatchWidgetContext (data: dict[str, Any], json_deserializer: Callable | None = None)
-
Provides a single read only access to a wrapper dict
Parameters
data
:dict[str, Any]
- Lambda Event Source Event payload
json_deserializer
:Callable
, optional- function to deserialize
str
,bytes
,bytearray
containing a JSON document to a Pythonobj
, by default json.loads
Expand source code
class CloudWatchWidgetContext(DictWrapper): @property def dashboard_name(self) -> str: """Get dashboard name, in which the widget is used""" return self["dashboardName"] @property def widget_id(self) -> str: """Get widget ID""" return self["widgetId"] @property def domain(self) -> str: """AWS domain name""" return self["domain"] @property def account_id(self) -> str: """Get AWS Account ID""" return self["accountId"] @property def locale(self) -> str: """Get locale language""" return self["locale"] @property def timezone(self) -> TimeZone: """Timezone information of the dashboard""" return TimeZone(self["timezone"]) @property def period(self) -> int: """The period shown on the dashboard""" return int(self["period"]) @property def is_auto_period(self) -> bool: """Whether auto period is enabled""" return bool(self["isAutoPeriod"]) @property def time_range(self) -> TimeRange: """The widget time range""" return TimeRange(self["timeRange"]) @property def theme(self) -> str: """The dashboard theme, i.e. 'light' or 'dark'""" return self["theme"] @property def link_charts(self) -> bool: """The widget is linked to other charts""" return bool(self["linkCharts"]) @property def title(self) -> str: """Get widget title""" return self["title"] @property def params(self) -> dict[str, Any]: """Get widget parameters""" return self["params"] @property def forms(self) -> dict[str, Any]: """Get widget form data""" return self["forms"]["all"] @property def height(self) -> int: """Get widget height""" return int(self["height"]) @property def width(self) -> int: """Get widget width""" return int(self["width"])
Ancestors
- DictWrapper
- collections.abc.Mapping
- collections.abc.Collection
- collections.abc.Sized
- collections.abc.Iterable
- collections.abc.Container
- typing.Generic
Instance variables
prop account_id : str
-
Get AWS Account ID
Expand source code
@property def account_id(self) -> str: """Get AWS Account ID""" return self["accountId"]
prop dashboard_name : str
-
Get dashboard name, in which the widget is used
Expand source code
@property def dashboard_name(self) -> str: """Get dashboard name, in which the widget is used""" return self["dashboardName"]
prop domain : str
-
AWS domain name
Expand source code
@property def domain(self) -> str: """AWS domain name""" return self["domain"]
prop forms : dict[str, Any]
-
Get widget form data
Expand source code
@property def forms(self) -> dict[str, Any]: """Get widget form data""" return self["forms"]["all"]
prop height : int
-
Get widget height
Expand source code
@property def height(self) -> int: """Get widget height""" return int(self["height"])
prop is_auto_period : bool
-
Whether auto period is enabled
Expand source code
@property def is_auto_period(self) -> bool: """Whether auto period is enabled""" return bool(self["isAutoPeriod"])
prop link_charts : bool
-
The widget is linked to other charts
Expand source code
@property def link_charts(self) -> bool: """The widget is linked to other charts""" return bool(self["linkCharts"])
prop locale : str
-
Get locale language
Expand source code
@property def locale(self) -> str: """Get locale language""" return self["locale"]
prop params : dict[str, Any]
-
Get widget parameters
Expand source code
@property def params(self) -> dict[str, Any]: """Get widget parameters""" return self["params"]
prop period : int
-
The period shown on the dashboard
Expand source code
@property def period(self) -> int: """The period shown on the dashboard""" return int(self["period"])
prop theme : str
-
The dashboard theme, i.e. 'light' or 'dark'
Expand source code
@property def theme(self) -> str: """The dashboard theme, i.e. 'light' or 'dark'""" return self["theme"]
prop time_range : TimeRange
-
The widget time range
Expand source code
@property def time_range(self) -> TimeRange: """The widget time range""" return TimeRange(self["timeRange"])
prop timezone : TimeZone
-
Timezone information of the dashboard
Expand source code
@property def timezone(self) -> TimeZone: """Timezone information of the dashboard""" return TimeZone(self["timezone"])
prop title : str
-
Get widget title
Expand source code
@property def title(self) -> str: """Get widget title""" return self["title"]
prop widget_id : str
-
Get widget ID
Expand source code
@property def widget_id(self) -> str: """Get widget ID""" return self["widgetId"]
prop width : int
-
Get widget width
Expand source code
@property def width(self) -> int: """Get widget width""" return int(self["width"])
Inherited members
class TimeRange (data: dict[str, Any], json_deserializer: Callable | None = None)
-
Provides a single read only access to a wrapper dict
Parameters
data
:dict[str, Any]
- Lambda Event Source Event payload
json_deserializer
:Callable
, optional- function to deserialize
str
,bytes
,bytearray
containing a JSON document to a Pythonobj
, by default json.loads
Expand source code
class TimeRange(DictWrapper): @property def mode(self) -> str: """The time range mode, i.e. 'relative' or 'absolute'""" return self["mode"] @property def start(self) -> int: """The start time within the time range""" return self["start"] @property def end(self) -> int: """The end time within the time range""" return self["end"] @property def relative_start(self) -> int | None: """The relative start time within the time range""" return self.get("relativeStart") @property def zoom_start(self) -> int | None: """The start time within the zoomed time range""" return (self.get("zoom") or {}).get("start") @property def zoom_end(self) -> int | None: """The end time within the zoomed time range""" return (self.get("zoom") or {}).get("end")
Ancestors
- DictWrapper
- collections.abc.Mapping
- collections.abc.Collection
- collections.abc.Sized
- collections.abc.Iterable
- collections.abc.Container
- typing.Generic
Instance variables
prop end : int
-
The end time within the time range
Expand source code
@property def end(self) -> int: """The end time within the time range""" return self["end"]
prop mode : str
-
The time range mode, i.e. 'relative' or 'absolute'
Expand source code
@property def mode(self) -> str: """The time range mode, i.e. 'relative' or 'absolute'""" return self["mode"]
prop relative_start : int | None
-
The relative start time within the time range
Expand source code
@property def relative_start(self) -> int | None: """The relative start time within the time range""" return self.get("relativeStart")
prop start : int
-
The start time within the time range
Expand source code
@property def start(self) -> int: """The start time within the time range""" return self["start"]
prop zoom_end : int | None
-
The end time within the zoomed time range
Expand source code
@property def zoom_end(self) -> int | None: """The end time within the zoomed time range""" return (self.get("zoom") or {}).get("end")
prop zoom_start : int | None
-
The start time within the zoomed time range
Expand source code
@property def zoom_start(self) -> int | None: """The start time within the zoomed time range""" return (self.get("zoom") or {}).get("start")
Inherited members
class TimeZone (data: dict[str, Any], json_deserializer: Callable | None = None)
-
Provides a single read only access to a wrapper dict
Parameters
data
:dict[str, Any]
- Lambda Event Source Event payload
json_deserializer
:Callable
, optional- function to deserialize
str
,bytes
,bytearray
containing a JSON document to a Pythonobj
, by default json.loads
Expand source code
class TimeZone(DictWrapper): @property def label(self) -> str: """The time range label. Either 'UTC' or 'Local'""" return self["label"] @property def offset_iso(self) -> str: """The time range offset in the format +/-00:00""" return self["offsetISO"] @property def offset_in_minutes(self) -> int: """The time range offset in minutes""" return int(self["offsetInMinutes"])
Ancestors
- DictWrapper
- collections.abc.Mapping
- collections.abc.Collection
- collections.abc.Sized
- collections.abc.Iterable
- collections.abc.Container
- typing.Generic
Instance variables
prop label : str
-
The time range label. Either 'UTC' or 'Local'
Expand source code
@property def label(self) -> str: """The time range label. Either 'UTC' or 'Local'""" return self["label"]
prop offset_in_minutes : int
-
The time range offset in minutes
Expand source code
@property def offset_in_minutes(self) -> int: """The time range offset in minutes""" return int(self["offsetInMinutes"])
prop offset_iso : str
-
The time range offset in the format +/-00:00
Expand source code
@property def offset_iso(self) -> str: """The time range offset in the format +/-00:00""" return self["offsetISO"]
Inherited members