{"version":"2","toolVersion":"1.105.0","snippets":{"2681c3f053dd4193424df7e60e09865506adf1b5f51483ec7075285889aa6b32":{"translations":{"python":{"source":"# This could be in the same stack as your resources, as a nested stack, or a separate stack as you see fit\nclass MonitoringStack(DeploymentStack):\n    def __init__(self, parent, name, *):\n        super().__init__(parent, name)\n\n        monitoring = MonitoringFacade(self, \"Monitoring\",\n            # Defaults are provided for these, but they can be customized as desired\n            metric_factory_defaults={...},\n            alarm_factory_defaults={...},\n            dashboard_factory={...}\n        )\n\n        # Monitor your resources\n        monitoring.add_large_header(\"Storage\").monitor_dynamo_table().monitor_dynamo_table().monitor_lambda_function().monitor_custom()","version":"3"},"csharp":{"source":"class MonitoringStackProps : DeploymentStackProps\n{\n}\n\n// This could be in the same stack as your resources, as a nested stack, or a separate stack as you see fit\nclass MonitoringStack : DeploymentStack\n{\n    public MonitoringStack(App parent, string name, MonitoringStackProps props) : base(parent, name, props)\n    {\n\n        var monitoring = new MonitoringFacade(this, \"Monitoring\", new Struct {\n            // Defaults are provided for these, but they can be customized as desired\n            MetricFactoryDefaults = new Struct { ... },\n            AlarmFactoryDefaults = new Struct { ... },\n            DashboardFactory = new Struct { ... }\n        });\n\n        // Monitor your resources\n        monitoring.AddLargeHeader(\"Storage\").MonitorDynamoTable(new Struct { }).MonitorDynamoTable(new Struct { }).MonitorLambdaFunction(new Struct { }).MonitorCustom(new Struct { });\n    }\n}","version":"1"},"java":{"source":"public class MonitoringStackProps extends DeploymentStackProps {\n}\n\n// This could be in the same stack as your resources, as a nested stack, or a separate stack as you see fit\npublic class MonitoringStack extends DeploymentStack {\n    public MonitoringStack(App parent, String name, MonitoringStackProps props) {\n        super(parent, name, props);\n\n        Object monitoring = MonitoringFacade.Builder.create(this, \"Monitoring\")\n                // Defaults are provided for these, but they can be customized as desired\n                .metricFactoryDefaults(Map.of(...))\n                .alarmFactoryDefaults(Map.of(...))\n                .dashboardFactory(Map.of(...))\n                .build();\n\n        // Monitor your resources\n        monitoring.addLargeHeader(\"Storage\").monitorDynamoTable(Map.of()).monitorDynamoTable(Map.of()).monitorLambdaFunction(Map.of()).monitorCustom(Map.of());\n    }\n}","version":"1"},"go":{"source":"type monitoringStackProps struct {\n\tDeploymentStackProps\n}\n\n// This could be in the same stack as your resources, as a nested stack, or a separate stack as you see fit\ntype MonitoringStack struct {\n\tDeploymentStack\n}\n\nfunc NewMonitoringStack(parent App, name *string, props monitoringStackProps) *MonitoringStack {\n\tthis := &MonitoringStack{}\n\tnewDeploymentStack_Override(this, parent, name, props)\n\n\tmonitoring := NewMonitoringFacade(this, jsii.String(\"Monitoring\"), map[string]interface{}{\n\t\t// Defaults are provided for these, but they can be customized as desired\n\t\t\"metricFactoryDefaults\": map[string]interface{}{\n\t\t\t...,\n\t\t},\n\t\t\"alarmFactoryDefaults\": map[string]interface{}{\n\t\t\t...,\n\t\t},\n\t\t\"dashboardFactory\": map[string]interface{}{\n\t\t\t...,\n\t\t},\n\t})\n\n\t// Monitor your resources\n\tmonitoring.addLargeHeader(jsii.String(\"Storage\")).monitorDynamoTable(map[string]interface{}{\n\t}).monitorDynamoTable(map[string]interface{}{\n\t}).monitorLambdaFunction(map[string]interface{}{\n\t}).monitorCustom(map[string]interface{}{\n\t})\n\treturn this\n}","version":"1"},"$":{"source":"export interface MonitoringStackProps extends DeploymentStackProps {\n  // ...\n}\n\n// This could be in the same stack as your resources, as a nested stack, or a separate stack as you see fit\nexport class MonitoringStack extends DeploymentStack {\n  constructor(parent: App, name: string, props: MonitoringStackProps) {\n    super(parent, name, props);\n\n    const monitoring = new MonitoringFacade(this, \"Monitoring\", {\n      // Defaults are provided for these, but they can be customized as desired\n      metricFactoryDefaults: { ... },\n      alarmFactoryDefaults: { ... },\n      dashboardFactory: { ... },\n    });\n\n    // Monitor your resources\n    monitoring\n      .addLargeHeader(\"Storage\")\n      .monitorDynamoTable({ /* Monitor a DynamoDB table */ })\n      .monitorDynamoTable({ /* and a different table */ })\n      .monitorLambdaFunction({ /* and a Lambda function */ })\n      .monitorCustom({ /* and some arbitrary metrics in CloudWatch */ })\n      // ... etc.\n  }\n}","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":115}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\nexport interface MonitoringStackProps extends DeploymentStackProps {\n  // ...\n}\n\n// This could be in the same stack as your resources, as a nested stack, or a separate stack as you see fit\nexport class MonitoringStack extends DeploymentStack {\n  constructor(parent: App, name: string, props: MonitoringStackProps) {\n    super(parent, name, props);\n\n    const monitoring = new MonitoringFacade(this, \"Monitoring\", {\n      // Defaults are provided for these, but they can be customized as desired\n      metricFactoryDefaults: { ... },\n      alarmFactoryDefaults: { ... },\n      dashboardFactory: { ... },\n    });\n\n    // Monitor your resources\n    monitoring\n      .addLargeHeader(\"Storage\")\n      .monitorDynamoTable({ /* Monitor a DynamoDB table */ })\n      .monitorDynamoTable({ /* and a different table */ })\n      .monitorLambdaFunction({ /* and a Lambda function */ })\n      .monitorCustom({ /* and some arbitrary metrics in CloudWatch */ })\n      // ... etc.\n  }\n}\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"10":2,"75":26,"89":2,"102":1,"104":1,"143":1,"156":3,"162":1,"169":2,"193":8,"194":5,"196":6,"197":1,"216":2,"223":1,"225":1,"226":2,"242":1,"243":1,"245":1,"246":1,"279":2,"281":3,"283":3},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"8c2c0a469228b162e94b3ad82bb40de4e19fff6e2f14a64a182fa027b80f395b":{"translations":{"python":{"source":"# on_alarm_topic: ITopic\n\n\nmonitoring = MonitoringFacade(self, \"Monitoring\",\n    # ...other props\n    alarm_factory_defaults={\n        # ....other props\n        \"action\": SnsAlarmActionStrategy(on_alarm_topic=on_alarm_topic)\n    }\n)","version":"3"},"csharp":{"source":"ITopic onAlarmTopic;\n\n\nvar monitoring = new MonitoringFacade(this, \"Monitoring\", new Struct {\n    // ...other props\n    AlarmFactoryDefaults = new Struct {\n        // ....other props\n        Action = new SnsAlarmActionStrategy(new Struct { OnAlarmTopic = onAlarmTopic })\n    }\n});","version":"1"},"java":{"source":"ITopic onAlarmTopic;\n\n\nObject monitoring = MonitoringFacade.Builder.create(this, \"Monitoring\")\n        // ...other props\n        .alarmFactoryDefaults(Map.of(\n                // ....other props\n                \"action\", SnsAlarmActionStrategy.Builder.create().onAlarmTopic(onAlarmTopic).build()))\n        .build();","version":"1"},"go":{"source":"var onAlarmTopic ITopic\n\n\nmonitoring := NewMonitoringFacade(this, jsii.String(\"Monitoring\"), map[string]map[string]interface{}{\n\t// ...other props\n\t\"alarmFactoryDefaults\": map[string]interface{}{\n\t\t// ....other props\n\t\t\"action\": NewSnsAlarmActionStrategy(map[string]interface{}{\n\t\t\t\"onAlarmTopic\": onAlarmTopic,\n\t\t}),\n\t},\n})","version":"1"},"$":{"source":"declare const onAlarmTopic: ITopic;\n\nconst monitoring = new MonitoringFacade(this, \"Monitoring\", {\n  // ...other props\n  alarmFactoryDefaults: {\n    // ....other props\n    action: new SnsAlarmActionStrategy({ onAlarmTopic }),\n  },\n});","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":150}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Hoisted imports begin after !show marker below\n/// !show\ndeclare const onAlarmTopic: ITopic;\n/// !hide\n// Hoisted imports ended before !hide marker above\n// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\n\n\nconst monitoring = new MonitoringFacade(this, \"Monitoring\", {\n  // ...other props\n  alarmFactoryDefaults: {\n    // ....other props\n    action: new SnsAlarmActionStrategy({ onAlarmTopic }),\n  },\n});\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"10":1,"75":8,"104":1,"130":1,"169":1,"193":3,"197":2,"225":2,"242":2,"243":2,"281":2,"282":1,"290":1},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"f8553ff288712beea70a6101ca91ce3c3cb996728e16d3cacc19c0320bf3daf3":{"translations":{"python":{"source":"monitoring.monitor_something(something,\n    add_some_alarm={\n        \"Warning\": {\n            # ...other props\n            \"threshold\": 42,\n            \"action_override\": SnsAlarmActionStrategy(on_alarm_topic=on_alarm_topic)\n        }\n    }\n)","version":"3"},"csharp":{"source":"monitoring.MonitorSomething(something, new Struct {\n    AddSomeAlarm = new Struct {\n        Warning = new Struct {\n            // ...other props\n            Threshold = 42,\n            ActionOverride = new SnsAlarmActionStrategy(new Struct { OnAlarmTopic = onAlarmTopic })\n        }\n    }\n});","version":"1"},"java":{"source":"monitoring.monitorSomething(something, Map.of(\n        \"addSomeAlarm\", Map.of(\n                \"Warning\", Map.of(\n                        // ...other props\n                        \"threshold\", 42,\n                        \"actionOverride\", SnsAlarmActionStrategy.Builder.create().onAlarmTopic(onAlarmTopic).build()))));","version":"1"},"go":{"source":"monitoring.monitorSomething(something, map[string]map[string]map[string]interface{}{\n\t\"addSomeAlarm\": map[string]map[string]interface{}{\n\t\t\"Warning\": map[string]interface{}{\n\t\t\t// ...other props\n\t\t\t\"threshold\": jsii.Number(42),\n\t\t\t\"actionOverride\": NewSnsAlarmActionStrategy(map[string]interface{}{\n\t\t\t\t\"onAlarmTopic\": onAlarmTopic,\n\t\t\t}),\n\t\t},\n\t},\n})","version":"1"},"$":{"source":"monitoring\n  .monitorSomething(something, {\n    addSomeAlarm: {\n      Warning: {\n        // ...other props\n        threshold: 42,\n        actionOverride: new SnsAlarmActionStrategy({ onAlarmTopic }),\n      }\n    }\n  });","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":164}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\nmonitoring\n  .monitorSomething(something, {\n    addSomeAlarm: {\n      Warning: {\n        // ...other props\n        threshold: 42,\n        actionOverride: new SnsAlarmActionStrategy({ onAlarmTopic }),\n      }\n    }\n  });\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"8":1,"75":9,"193":4,"194":1,"196":1,"197":1,"226":1,"281":4,"282":1},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"e796fdd130636e445bb88fd922105da628835762ddabf7842b3bdd8c20b921ca":{"translations":{"python":{"source":"# on_alarm_topic: ITopic\n# on_alarm_function: IFunction\n\n\naction = multiple_actions(notify_sns(on_alarm_topic), trigger_lambda(on_alarm_function))","version":"3"},"csharp":{"source":"ITopic onAlarmTopic;\nIFunction onAlarmFunction;\n\n\nvar action = MultipleActions(NotifySns(onAlarmTopic), TriggerLambda(onAlarmFunction));","version":"1"},"java":{"source":"ITopic onAlarmTopic;\nIFunction onAlarmFunction;\n\n\nIAlarmActionStrategy action = multipleActions(notifySns(onAlarmTopic), triggerLambda(onAlarmFunction));","version":"1"},"go":{"source":"var onAlarmTopic ITopic\nvar onAlarmFunction IFunction\n\n\naction := multipleActions(notifySns(onAlarmTopic), triggerLambda(onAlarmFunction))","version":"1"},"$":{"source":"declare const onAlarmTopic: ITopic;\ndeclare const onAlarmFunction: IFunction;\n\nconst action: IAlarmActionStrategy = multipleActions(notifySns(onAlarmTopic), triggerLambda(onAlarmFunction));","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":181}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Hoisted imports begin after !show marker below\n/// !show\ndeclare const onAlarmTopic: ITopic;\ndeclare const onAlarmFunction: IFunction;\n/// !hide\n// Hoisted imports ended before !hide marker above\n// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\n\n\nconst action: IAlarmActionStrategy = multipleActions(notifySns(onAlarmTopic), triggerLambda(onAlarmFunction));\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"75":11,"130":2,"169":3,"196":3,"225":3,"242":3,"243":3,"290":1},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"961f9ff099abc0ba48e02926fe99705f970bffa7eab50845cf48503739f6f4ab":{"translations":{"python":{"source":"# create metrics manually\nm1 = Metric()","version":"3"},"csharp":{"source":"// create metrics manually\nvar m1 = new Metric();","version":"1"},"java":{"source":"// create metrics manually\nObject m1 = new Metric();","version":"1"},"go":{"source":"// create metrics manually\nm1 := NewMetric()","version":"1"},"$":{"source":"// create metrics manually\nconst m1 = new Metric(/* ... */);","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":201}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\n// create metrics manually\nconst m1 = new Metric(/* ... */);\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"75":2,"197":1,"225":1,"242":1,"243":1},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"ccf9cd6a5e03629a3aca064b4c85ef14e669fa614566f041df5db65533e53f50":{"translations":{"python":{"source":"metric_factory = monitoring_facade.create_metric_factory()\n\n# create metrics using metric factory\nm1 = metric_factory.create_metric()","version":"3"},"csharp":{"source":"var metricFactory = monitoringFacade.CreateMetricFactory();\n\n// create metrics using metric factory\nvar m1 = metricFactory.CreateMetric();","version":"1"},"java":{"source":"Object metricFactory = monitoringFacade.createMetricFactory();\n\n// create metrics using metric factory\nObject m1 = metricFactory.createMetric();","version":"1"},"go":{"source":"metricFactory := monitoringFacade.createMetricFactory()\n\n// create metrics using metric factory\nm1 := metricFactory.createMetric()","version":"1"},"$":{"source":"const metricFactory = monitoringFacade.createMetricFactory();\n\n// create metrics using metric factory\nconst m1 = metricFactory.createMetric(/* ... */);","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":206}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\nconst metricFactory = monitoringFacade.createMetricFactory();\n\n// create metrics using metric factory\nconst m1 = metricFactory.createMetric(/* ... */);\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"75":6,"194":2,"196":2,"225":2,"242":2,"243":2},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"2359b1190b959eec4b684426a367850c9c18092f2f6ffc6ef056686644ba1c71":{"translations":{"python":{"source":"monitor_custom(\n    title=\"Metric with anomaly detection\",\n    metric_groups=[{\n        \"metric\": m1,\n        \"anomaly_detection_standard_deviation_to_render\": 3\n    }\n    ]\n)","version":"3"},"csharp":{"source":"MonitorCustom(new Struct {\n    Title = \"Metric with anomaly detection\",\n    MetricGroups = new [] { new Struct {\n        Metric = m1,\n        AnomalyDetectionStandardDeviationToRender = 3\n    } }\n});","version":"1"},"java":{"source":"monitorCustom(Map.of(\n        \"title\", \"Metric with anomaly detection\",\n        \"metricGroups\", List.of(Map.of(\n                \"metric\", m1,\n                \"anomalyDetectionStandardDeviationToRender\", 3))));","version":"1"},"go":{"source":"monitorCustom(map[string]interface{}{\n\t\"title\": jsii.String(\"Metric with anomaly detection\"),\n\t\"metricGroups\": []map[string]interface{}{\n\t\tmap[string]interface{}{\n\t\t\t\"metric\": m1,\n\t\t\t\"anomalyDetectionStandardDeviationToRender\": jsii.Number(3),\n\t\t},\n\t},\n})","version":"1"},"$":{"source":"monitorCustom({\n  title: \"Metric with anomaly detection\",\n  metricGroups: [\n    {\n      metric: m1,\n      anomalyDetectionStandardDeviationToRender: 3\n    }\n  ]\n})","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":218}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\nmonitorCustom({\n  title: \"Metric with anomaly detection\",\n  metricGroups: [\n    {\n      metric: m1,\n      anomalyDetectionStandardDeviationToRender: 3\n    }\n  ]\n})\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"8":1,"10":1,"75":6,"192":1,"193":2,"196":1,"226":1,"281":4},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"f0949efd945e34fe39c49714383b320df2908e32d2436b8e76d421e62881ec03":{"translations":{"python":{"source":"monitor_custom(\n    title=\"Metric with anomaly detection and alarm\",\n    metric_groups=[{\n        \"metric\": m1,\n        \"alarm_friendly_name\": \"MetricWithAnomalyDetectionAlarm\",\n        \"anomaly_detection_standard_deviation_to_render\": 3,\n        \"add_alarm_on_anomaly\": {\n            \"Warning\": {\n                \"standard_deviation_for_alarm\": 4,\n                \"alarm_when_above_the_band\": True,\n                \"alarm_when_below_the_band\": True\n            }\n        }\n    }\n    ]\n)","version":"3"},"csharp":{"source":"MonitorCustom(new Struct {\n    Title = \"Metric with anomaly detection and alarm\",\n    MetricGroups = new [] { new Struct {\n        Metric = m1,\n        AlarmFriendlyName = \"MetricWithAnomalyDetectionAlarm\",\n        AnomalyDetectionStandardDeviationToRender = 3,\n        AddAlarmOnAnomaly = new Struct {\n            Warning = new Struct {\n                StandardDeviationForAlarm = 4,\n                AlarmWhenAboveTheBand = true,\n                AlarmWhenBelowTheBand = true\n            }\n        }\n    } }\n});","version":"1"},"java":{"source":"monitorCustom(Map.of(\n        \"title\", \"Metric with anomaly detection and alarm\",\n        \"metricGroups\", List.of(Map.of(\n                \"metric\", m1,\n                \"alarmFriendlyName\", \"MetricWithAnomalyDetectionAlarm\",\n                \"anomalyDetectionStandardDeviationToRender\", 3,\n                \"addAlarmOnAnomaly\", Map.of(\n                        \"Warning\", Map.of(\n                                \"standardDeviationForAlarm\", 4,\n                                \"alarmWhenAboveTheBand\", true,\n                                \"alarmWhenBelowTheBand\", true))))));","version":"1"},"go":{"source":"monitorCustom(map[string]interface{}{\n\t\"title\": jsii.String(\"Metric with anomaly detection and alarm\"),\n\t\"metricGroups\": []map[string]interface{}{\n\t\tmap[string]interface{}{\n\t\t\t\"metric\": m1,\n\t\t\t\"alarmFriendlyName\": jsii.String(\"MetricWithAnomalyDetectionAlarm\"),\n\t\t\t\"anomalyDetectionStandardDeviationToRender\": jsii.Number(3),\n\t\t\t\"addAlarmOnAnomaly\": map[string]map[string]interface{}{\n\t\t\t\t\"Warning\": map[string]interface{}{\n\t\t\t\t\t\"standardDeviationForAlarm\": jsii.Number(4),\n\t\t\t\t\t\"alarmWhenAboveTheBand\": jsii.Boolean(true),\n\t\t\t\t\t\"alarmWhenBelowTheBand\": jsii.Boolean(true),\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n})","version":"1"},"$":{"source":"monitorCustom({\n  title: \"Metric with anomaly detection and alarm\",\n  metricGroups: [\n    {\n      metric: m1,\n      alarmFriendlyName: \"MetricWithAnomalyDetectionAlarm\",\n      anomalyDetectionStandardDeviationToRender: 3,\n      addAlarmOnAnomaly: {\n        Warning: {\n          standardDeviationForAlarm: 4,\n          alarmWhenAboveTheBand: true,\n          alarmWhenBelowTheBand: true\n        }\n      }\n    }\n  ]\n})","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":232}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\nmonitorCustom({\n  title: \"Metric with anomaly detection and alarm\",\n  metricGroups: [\n    {\n      metric: m1,\n      alarmFriendlyName: \"MetricWithAnomalyDetectionAlarm\",\n      anomalyDetectionStandardDeviationToRender: 3,\n      addAlarmOnAnomaly: {\n        Warning: {\n          standardDeviationForAlarm: 4,\n          alarmWhenAboveTheBand: true,\n          alarmWhenBelowTheBand: true\n        }\n      }\n    }\n  ]\n})\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"8":2,"10":2,"75":12,"106":2,"192":1,"193":4,"196":1,"226":1,"281":10},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"9cc43e1396de427f739df3e02f1543eac9404cd37ce56f1f510d4615e233f8e1":{"translations":{"python":{"source":"monitor_custom(\n    title=\"Metric search\",\n    metric_groups=[{\n        \"search_query\": \"My.Prefix.\",\n        \"dimensions_map\": {\n            \"FirstDimension\": \"FirstDimensionValue\",\n            # Allow any value for the given dimension (pardon the weird typing to satisfy DimensionsMap)\n            \"SecondDimension\": undefined\n        },\n        \"statistic\": MetricStatistic.SUM\n    }\n    ]\n)","version":"3"},"csharp":{"source":"MonitorCustom(new Struct {\n    Title = \"Metric search\",\n    MetricGroups = new [] { new Struct {\n        SearchQuery = \"My.Prefix.\",\n        DimensionsMap = new Struct {\n            FirstDimension = \"FirstDimensionValue\",\n            // Allow any value for the given dimension (pardon the weird typing to satisfy DimensionsMap)\n            SecondDimension = (string)(object)undefined\n        },\n        Statistic = MetricStatistic.SUM\n    } }\n});","version":"1"},"java":{"source":"monitorCustom(Map.of(\n        \"title\", \"Metric search\",\n        \"metricGroups\", List.of(Map.of(\n                \"searchQuery\", \"My.Prefix.\",\n                \"dimensionsMap\", Map.of(\n                        \"FirstDimension\", \"FirstDimensionValue\",\n                        // Allow any value for the given dimension (pardon the weird typing to satisfy DimensionsMap)\n                        \"SecondDimension\", (String)(Object)undefined),\n                \"statistic\", MetricStatistic.getSUM()))));","version":"1"},"go":{"source":"monitorCustom(map[string]interface{}{\n\t\"title\": jsii.String(\"Metric search\"),\n\t\"metricGroups\": []map[string]interface{}{\n\t\tmap[string]interface{}{\n\t\t\t\"searchQuery\": jsii.String(\"My.Prefix.\"),\n\t\t\t\"dimensionsMap\": map[string]interface{}{\n\t\t\t\t\"FirstDimension\": jsii.String(\"FirstDimensionValue\"),\n\t\t\t\t// Allow any value for the given dimension (pardon the weird typing to satisfy DimensionsMap)\n\t\t\t\t\"SecondDimension\": string(undefined),\n\t\t\t},\n\t\t\t\"statistic\": MetricStatistic_SUM,\n\t\t},\n\t},\n})","version":"1"},"$":{"source":"monitorCustom({\n  title: \"Metric search\",\n  metricGroups: [\n    {\n      searchQuery: \"My.Prefix.\",\n      dimensionsMap: {\n        FirstDimension: \"FirstDimensionValue\",\n        // Allow any value for the given dimension (pardon the weird typing to satisfy DimensionsMap)\n        SecondDimension: undefined as unknown as string\n      }\n      statistic: MetricStatistic.SUM,\n    }\n  ]\n})","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":254}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\nmonitorCustom({\n  title: \"Metric search\",\n  metricGroups: [\n    {\n      searchQuery: \"My.Prefix.\",\n      dimensionsMap: {\n        FirstDimension: \"FirstDimensionValue\",\n        // Allow any value for the given dimension (pardon the weird typing to satisfy DimensionsMap)\n        SecondDimension: undefined as unknown as string\n      }\n      statistic: MetricStatistic.SUM,\n    }\n  ]\n})\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"10":3,"75":11,"143":1,"148":1,"192":1,"193":3,"194":1,"196":1,"217":2,"226":1,"281":7},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"37f7ee33e91c7a533a6a05e630fa3eb4096a621328132a487e185726a92d4036":{"translations":{"python":{"source":"monitoring.monitor_something(something,\n    add_some_alarm={\n        \"Warning\": {\n            # ...other props\n            \"metric_adjuster\": Route53HealthCheckMetricAdjuster.INSTANCE\n        }\n    }\n)","version":"3"},"csharp":{"source":"monitoring.MonitorSomething(something, new Struct {\n    AddSomeAlarm = new Struct {\n        Warning = new Struct {\n            // ...other props\n            MetricAdjuster = Route53HealthCheckMetricAdjuster.INSTANCE\n        }\n    }\n});","version":"1"},"java":{"source":"monitoring.monitorSomething(something, Map.of(\n        \"addSomeAlarm\", Map.of(\n                \"Warning\", Map.of(\n                        // ...other props\n                        \"metricAdjuster\", Route53HealthCheckMetricAdjuster.getINSTANCE()))));","version":"1"},"go":{"source":"monitoring.monitorSomething(something, map[string]map[string]map[string]interface{}{\n\t\"addSomeAlarm\": map[string]map[string]interface{}{\n\t\t\"Warning\": map[string]interface{}{\n\t\t\t// ...other props\n\t\t\t\"metricAdjuster\": Route53HealthCheckMetricAdjuster_INSTANCE,\n\t\t},\n\t},\n})","version":"1"},"$":{"source":"monitoring\n  .monitorSomething(something, {\n    addSomeAlarm: {\n      Warning: {\n        // ...other props\n        metricAdjuster: Route53HealthCheckMetricAdjuster.INSTANCE,\n      }\n    }\n  });","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":278}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\nmonitoring\n  .monitorSomething(something, {\n    addSomeAlarm: {\n      Warning: {\n        // ...other props\n        metricAdjuster: Route53HealthCheckMetricAdjuster.INSTANCE,\n      }\n    }\n  });\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"75":8,"193":3,"194":2,"196":1,"226":1,"281":3},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"08a68f6b924da46c52e3daf4d25ea49f95b62d2e2ae171f9fbac86154a536c5e":{"translations":{"python":{"source":"from aws_cdk.aws_route53 import CfnHealthCheck\n\n\nmonitoring.monitor_something(something,\n    add_some_alarm={\n        \"Warning\": {\n            # ...other props\n            \"custom_tags\": [\"route53-health-check\"],\n            \"metric_adjuster\": Route53HealthCheckMetricAdjuster.INSTANCE\n        }\n    }\n)\n\nalarms = monitoring.created_alarms_with_tag(\"route53-health-check\")\n\nhealth_checks = alarms.map(({ alarm }) => {\n      const id = getHealthCheckConstructId(alarm);\n\n      return new CfnHealthCheck(scope, id, {\n        healthCheckConfig: {\n          // ...other props\n          type: \"CLOUDWATCH_METRIC\",\n          alarmIdentifier: {\n            name: alarm.alarmName,\n            region: alarm.stack.region,\n          },\n        },\n      });\n    })","version":"3"},"csharp":{"source":"using Amazon.CDK.AWS.Route53;\n\n\nmonitoring.MonitorSomething(something, new Struct {\n    AddSomeAlarm = new Struct {\n        Warning = new Struct {\n            // ...other props\n            CustomTags = new [] { \"route53-health-check\" },\n            MetricAdjuster = Route53HealthCheckMetricAdjuster.INSTANCE\n        }\n    }\n});\n\nvar alarms = monitoring.CreatedAlarmsWithTag(\"route53-health-check\");\n\nvar healthChecks = alarms.Map(({ alarm }) => {\n  const id = getHealthCheckConstructId(alarm);\n\n  return new CfnHealthCheck(scope, id, {\n    healthCheckConfig: {\n      // ...other props\n      type: \"CLOUDWATCH_METRIC\",\n      alarmIdentifier: {\n        name: alarm.alarmName,\n        region: alarm.stack.region,\n      },\n    },\n  });\n});","version":"1"},"java":{"source":"import software.amazon.awscdk.services.route53.CfnHealthCheck;\n\n\nmonitoring.monitorSomething(something, Map.of(\n        \"addSomeAlarm\", Map.of(\n                \"Warning\", Map.of(\n                        // ...other props\n                        \"customTags\", List.of(\"route53-health-check\"),\n                        \"metricAdjuster\", Route53HealthCheckMetricAdjuster.getINSTANCE()))));\n\nObject alarms = monitoring.createdAlarmsWithTag(\"route53-health-check\");\n\nObject healthChecks = alarms.map(({ alarm }) => {\n  const id = getHealthCheckConstructId(alarm);\n\n  return new CfnHealthCheck(scope, id, {\n    healthCheckConfig: {\n      // ...other props\n      type: \"CLOUDWATCH_METRIC\",\n      alarmIdentifier: {\n        name: alarm.alarmName,\n        region: alarm.stack.region,\n      },\n    },\n  });\n});","version":"1"},"go":{"source":"import \"github.com/aws/aws-cdk-go/awscdk\"\n\n\nmonitoring.monitorSomething(something, map[string]map[string]map[string]interface{}{\n\t\"addSomeAlarm\": map[string]map[string]interface{}{\n\t\t\"Warning\": map[string]interface{}{\n\t\t\t// ...other props\n\t\t\t\"customTags\": []*string{\n\t\t\t\tjsii.String(\"route53-health-check\"),\n\t\t\t},\n\t\t\t\"metricAdjuster\": Route53HealthCheckMetricAdjuster_INSTANCE,\n\t\t},\n\t},\n})\n\nalarms := monitoring.createdAlarmsWithTag(jsii.String(\"route53-health-check\"))\n\nhealthChecks := alarms.map(({ alarm }) => {\n  const id = getHealthCheckConstructId(alarm);\n\n  return new CfnHealthCheck(scope, id, {\n    healthCheckConfig: {\n      // ...other props\n      type: \"CLOUDWATCH_METRIC\",\n      alarmIdentifier: {\n        name: alarm.alarmName,\n        region: alarm.stack.region,\n      },\n    },\n  });\n})","version":"1"},"$":{"source":"import { CfnHealthCheck } from \"aws-cdk-lib/aws-route53\";\n\nmonitoring\n  .monitorSomething(something, {\n    addSomeAlarm: {\n      Warning: {\n        // ...other props\n        customTags: [\"route53-health-check\"],\n        metricAdjuster: Route53HealthCheckMetricAdjuster.INSTANCE,\n      }\n    }\n  });\n\nconst alarms = monitoring.createdAlarmsWithTag(\"route53-health-check\");\n\nconst healthChecks = alarms.map(({ alarm }) => {\n  const id = getHealthCheckConstructId(alarm);\n\n  return new CfnHealthCheck(scope, id, {\n    healthCheckConfig: {\n      // ...other props\n      type: \"CLOUDWATCH_METRIC\",\n      alarmIdentifier: {\n        name: alarm.alarmName,\n        region: alarm.stack.region,\n      },\n    },\n  });\n});","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":293}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Hoisted imports begin after !show marker below\n/// !show\nimport { CfnHealthCheck } from \"aws-cdk-lib/aws-route53\";\n/// !hide\n// Hoisted imports ended before !hide marker above\n// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\n\n\nmonitoring\n  .monitorSomething(something, {\n    addSomeAlarm: {\n      Warning: {\n        // ...other props\n        customTags: [\"route53-health-check\"],\n        metricAdjuster: Route53HealthCheckMetricAdjuster.INSTANCE,\n      }\n    }\n  });\n\nconst alarms = monitoring.createdAlarmsWithTag(\"route53-health-check\");\n\nconst healthChecks = alarms.map(({ alarm }) => {\n  const id = getHealthCheckConstructId(alarm);\n\n  return new CfnHealthCheck(scope, id, {\n    healthCheckConfig: {\n      // ...other props\n      type: \"CLOUDWATCH_METRIC\",\n      alarmIdentifier: {\n        name: alarm.alarmName,\n        region: alarm.stack.region,\n      },\n    },\n  });\n});\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"10":4,"38":1,"75":33,"156":1,"189":1,"191":1,"192":1,"193":6,"194":7,"196":4,"197":1,"202":1,"223":1,"225":3,"226":1,"235":1,"242":3,"243":3,"254":1,"255":1,"257":1,"258":1,"281":9,"290":1},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"a80733010f9c5bcb21584bc6221bcd944ae52add3b1bdb40b5334cae039653a5":{"translations":{"python":{"source":"class MyCustomizedLambdaFunctionMonitoring(LambdaFunctionMonitoring):\n    def widgets(self):\n        return []","version":"3"},"csharp":{"source":"class MyCustomizedLambdaFunctionMonitoring : LambdaFunctionMonitoring\n{\n    public void[] Widgets()\n    {\n        return new [] {  };\n    }\n}","version":"1"},"java":{"source":"public class MyCustomizedLambdaFunctionMonitoring extends LambdaFunctionMonitoring {\n    public void[] widgets() {\n        return List.of();\n    }\n}","version":"1"},"go":{"source":"type MyCustomizedLambdaFunctionMonitoring struct {\n\tLambdaFunctionMonitoring\n}\n\nfunc (this *MyCustomizedLambdaFunctionMonitoring) widgets() []interface{} {\n\treturn []interface{}{\n\t}\n}","version":"1"},"$":{"source":"export class MyCustomizedLambdaFunctionMonitoring extends LambdaFunctionMonitoring {\n  widgets(): IWidget[] {\n    return [\n      // Whatever widgets you want instead of what LambdaFunctionMonitoring has\n    ];\n  }\n}","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":345}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\nexport class MyCustomizedLambdaFunctionMonitoring extends LambdaFunctionMonitoring {\n  widgets(): IWidget[] {\n    return [\n      // Whatever widgets you want instead of what LambdaFunctionMonitoring has\n    ];\n  }\n}\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"75":4,"89":1,"161":1,"169":1,"174":1,"192":1,"216":1,"223":1,"235":1,"245":1,"279":1},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"c4842129f5a9ef2c6eb7340b8eef3d838591a8b439ef73db1272ac6a1228a88f":{"translations":{"python":{"source":"# facade: MonitoringFacade\n\n\nfacade.add_segment(MyCustomizedLambdaFunctionMonitoring(facade))","version":"3"},"csharp":{"source":"MonitoringFacade facade;\n\n\nfacade.AddSegment(new MyCustomizedLambdaFunctionMonitoring(facade, new Struct { }));","version":"1"},"java":{"source":"MonitoringFacade facade;\n\n\nfacade.addSegment(MyCustomizedLambdaFunctionMonitoring.Builder.create(facade).build());","version":"1"},"go":{"source":"var facade MonitoringFacade\n\n\nfacade.addSegment(NewMyCustomizedLambdaFunctionMonitoring(facade, map[string]interface{}{\n}))","version":"1"},"$":{"source":"declare const facade: MonitoringFacade;\n\nfacade.addSegment(new MyCustomizedLambdaFunctionMonitoring(facade, {\n  // Props for LambdaFunctionMonitoring\n}));","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":355}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Hoisted imports begin after !show marker below\n/// !show\ndeclare const facade: MonitoringFacade;\n/// !hide\n// Hoisted imports ended before !hide marker above\n// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\n\n\nfacade.addSegment(new MyCustomizedLambdaFunctionMonitoring(facade, {\n  // Props for LambdaFunctionMonitoring\n}));\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"75":6,"130":1,"169":1,"193":1,"194":1,"196":1,"197":1,"225":1,"226":1,"242":1,"243":1,"290":1},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"01c3200dd0a924e5f083e0e40039e0d0bc23b0a57ab69438d4a13c0d0e6eb321":{"translations":{"python":{"source":"# create the dynamic dashboard factory.\nfactory = DynamicDashboardFactory(stack, \"DynamicDashboards\",\n    dashboard_name_prefix=\"ExampleDashboards\",\n    dashboard_configs=[{\"name\": \"HostedService\"}, {\n        \"name\": \"Infrastructure\",\n        \"range\": Duration.hours(3),\n        \"period_override\": PeriodOverride.AUTO,\n        \"rendering_preference\": DashboardRenderingPreference.BITMAP_ONLY\n    }\n    ]\n)","version":"3"},"csharp":{"source":"// create the dynamic dashboard factory.\nvar factory = new DynamicDashboardFactory(stack, \"DynamicDashboards\", new Struct {\n    DashboardNamePrefix = \"ExampleDashboards\",\n    DashboardConfigs = new [] { new Struct { Name = \"HostedService\" }, new Struct {\n        Name = \"Infrastructure\",\n        Range = Duration.Hours(3),\n        PeriodOverride = PeriodOverride.AUTO,\n        RenderingPreference = DashboardRenderingPreference.BITMAP_ONLY\n    } }\n});","version":"1"},"java":{"source":"// create the dynamic dashboard factory.\nObject factory = DynamicDashboardFactory.Builder.create(stack, \"DynamicDashboards\")\n        .dashboardNamePrefix(\"ExampleDashboards\")\n        .dashboardConfigs(List.of(Map.of(\"name\", \"HostedService\"), Map.of(\n                \"name\", \"Infrastructure\",\n                \"range\", Duration.hours(3),\n                \"periodOverride\", PeriodOverride.getAUTO(),\n                \"renderingPreference\", DashboardRenderingPreference.getBITMAP_ONLY())))\n        .build();","version":"1"},"go":{"source":"// create the dynamic dashboard factory.\nfactory := NewDynamicDashboardFactory(stack, jsii.String(\"DynamicDashboards\"), map[string]interface{}{\n\t\"dashboardNamePrefix\": jsii.String(\"ExampleDashboards\"),\n\t\"dashboardConfigs\": []interface{}{\n\t\tmap[string]*string{\n\t\t\t\"name\": jsii.String(\"HostedService\"),\n\t\t},\n\t\tmap[string]interface{}{\n\t\t\t\"name\": jsii.String(\"Infrastructure\"),\n\t\t\t\"range\": Duration_hours(jsii.Number(3)),\n\t\t\t\"periodOverride\": PeriodOverride_AUTO,\n\t\t\t\"renderingPreference\": DashboardRenderingPreference_BITMAP_ONLY,\n\t\t},\n\t},\n})","version":"1"},"$":{"source":"// create the dynamic dashboard factory.\nconst factory = new DynamicDashboardFactory(stack, \"DynamicDashboards\", {\n  dashboardNamePrefix: \"ExampleDashboards\",\n  dashboardConfigs: [\n    // 'name' is the minimum required configuration\n    { name: \"HostedService\" },\n    // below is an example of additional dashboard-specific config options\n    {\n      name: \"Infrastructure\",\n      range: Duration.hours(3),\n      periodOverride: PeriodOverride.AUTO,\n      renderingPreference: DashboardRenderingPreference.BITMAP_ONLY\n    },\n  ],\n});","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":378}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\n// create the dynamic dashboard factory.\nconst factory = new DynamicDashboardFactory(stack, \"DynamicDashboards\", {\n  dashboardNamePrefix: \"ExampleDashboards\",\n  dashboardConfigs: [\n    // 'name' is the minimum required configuration\n    { name: \"HostedService\" },\n    // below is an example of additional dashboard-specific config options\n    {\n      name: \"Infrastructure\",\n      range: Duration.hours(3),\n      periodOverride: PeriodOverride.AUTO,\n      renderingPreference: DashboardRenderingPreference.BITMAP_ONLY\n    },\n  ],\n});\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"8":1,"10":4,"75":16,"192":1,"193":3,"194":3,"196":1,"197":1,"225":1,"242":1,"243":1,"281":7},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"1fe71bbad6a2dbca0d31463c23ffca27c6ed40faed4a0d2078840ddb12effbb9":{"translations":{"python":{"source":"export enum DashboardTypes {\n  HostedService = \"HostedService\",\n  Infrastructure = \"Infrastructure\",\n}\n\nclass ExampleSegment(IDynamicDashboardSegment):\n    def widgets_for_dashboard(self, name): switch (name) {\n              case DashboardTypes.HostedService:\n                return [new TextWidget({ markdown: \"This shows metrics for your service hosted on AWS Infrastructure\" })];\n              case DashboardTypes.Infrastructure:\n                return [new TextWidget({ markdown: \"This shows metrics for the AWS Infrastructure supporting your hosted service\" })];\n              default:\n                throw new Error(\"Unexpected dashboard name!\");\n            }","version":"3"},"csharp":{"source":"export enum DashboardTypes {\n  HostedService = \"HostedService\",\n  Infrastructure = \"Infrastructure\",\n}\n\nclass ExampleSegment : IDynamicDashboardSegment\n{\n    public void[] WidgetsForDashboard(string name)\n    {switch (name) {\n              case DashboardTypes.HostedService:\n                return [new TextWidget({ markdown: \"This shows metrics for your service hosted on AWS Infrastructure\" })];\n              case DashboardTypes.Infrastructure:\n                return [new TextWidget({ markdown: \"This shows metrics for the AWS Infrastructure supporting your hosted service\" })];\n              default:\n                throw new Error(\"Unexpected dashboard name!\");\n            }\n    }\n}","version":"1"},"java":{"source":"export enum DashboardTypes {\n  HostedService = \"HostedService\",\n  Infrastructure = \"Infrastructure\",\n}\n\npublic class ExampleSegment implements IDynamicDashboardSegment {\n    public void[] widgetsForDashboard(String name) {switch (name) {\n              case DashboardTypes.HostedService:\n                return [new TextWidget({ markdown: \"This shows metrics for your service hosted on AWS Infrastructure\" })];\n              case DashboardTypes.Infrastructure:\n                return [new TextWidget({ markdown: \"This shows metrics for the AWS Infrastructure supporting your hosted service\" })];\n              default:\n                throw new Error(\"Unexpected dashboard name!\");\n            }\n    }\n}","version":"1"},"go":{"source":"export enum DashboardTypes {\n  HostedService = \"HostedService\",\n  Infrastructure = \"Infrastructure\",\n}\n\ntype exampleSegment struct {\n}\n\nfunc (this *exampleSegment) widgetsForDashboard(name *string) []interface{} {switch (name) {\n\t      case DashboardTypes.HostedService:\n\t        return [new TextWidget({ markdown: \"This shows metrics for your service hosted on AWS Infrastructure\" })];\n\t      case DashboardTypes.Infrastructure:\n\t        return [new TextWidget({ markdown: \"This shows metrics for the AWS Infrastructure supporting your hosted service\" })];\n\t      default:\n\t        throw new Error(\"Unexpected dashboard name!\");\n\t    }\n}","version":"1"},"$":{"source":"export enum DashboardTypes {\n  HostedService = \"HostedService\",\n  Infrastructure = \"Infrastructure\",\n}\n\nclass ExampleSegment implements IDynamicDashboardSegment {\n  widgetsForDashboard(name: string): IWidget[] {\n    // this logic is what's responsible for allowing your dynamic segment to return\n    // different widgets for different dashboards\n    switch (name) {\n      case DashboardTypes.HostedService:\n        return [new TextWidget({ markdown: \"This shows metrics for your service hosted on AWS Infrastructure\" })];\n      case DashboardTypes.Infrastructure:\n        return [new TextWidget({ markdown: \"This shows metrics for the AWS Infrastructure supporting your hosted service\" })];\n      default:\n        throw new Error(\"Unexpected dashboard name!\");\n    }\n  }\n}","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":399}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\nexport enum DashboardTypes {\n  HostedService = \"HostedService\",\n  Infrastructure = \"Infrastructure\",\n}\n\nclass ExampleSegment implements IDynamicDashboardSegment {\n  widgetsForDashboard(name: string): IWidget[] {\n    // this logic is what's responsible for allowing your dynamic segment to return\n    // different widgets for different dashboards\n    switch (name) {\n      case DashboardTypes.HostedService:\n        return [new TextWidget({ markdown: \"This shows metrics for your service hosted on AWS Infrastructure\" })];\n      case DashboardTypes.Infrastructure:\n        return [new TextWidget({ markdown: \"This shows metrics for the AWS Infrastructure supporting your hosted service\" })];\n      default:\n        throw new Error(\"Unexpected dashboard name!\");\n    }\n  }\n}\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"10":5,"75":18,"89":1,"143":1,"156":1,"161":1,"169":1,"174":1,"192":2,"193":2,"194":2,"197":3,"216":1,"223":1,"235":2,"237":1,"239":1,"245":1,"248":1,"251":1,"277":2,"278":1,"279":1,"281":2,"284":2},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"c869b05a62fb61aa1a5ffa4074088395124483048aa30e8519c8aaa73edb3399":{"translations":{"python":{"source":"monitoring.add_dynamic_segment(ExampleSegment())","version":"3"},"csharp":{"source":"monitoring.AddDynamicSegment(new ExampleSegment());","version":"1"},"java":{"source":"monitoring.addDynamicSegment(new ExampleSegment());","version":"1"},"go":{"source":"monitoring.addDynamicSegment(NewExampleSegment())","version":"1"},"$":{"source":"monitoring.addDynamicSegment(new ExampleSegment());","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":425}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\nmonitoring.addDynamicSegment(new ExampleSegment());\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"75":3,"194":1,"196":1,"197":1,"226":1},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"09daef6115f7e586ad51a53f4d84f29e9c3433c6a8d3064d9163c1c7f8c1d40a":{"translations":{"python":{"source":"MonitoringFacade(stack, \"Monitoring\",\n    metric_factory_defaults={\n        # Different region/account than what you're deploying to\n        \"region\": \"us-west-2\",\n        \"account\": \"01234567890\"\n    }\n)","version":"3"},"csharp":{"source":"new MonitoringFacade(stack, \"Monitoring\", new Struct {\n    MetricFactoryDefaults = new Struct {\n        // Different region/account than what you're deploying to\n        Region = \"us-west-2\",\n        Account = \"01234567890\"\n    }\n});","version":"1"},"java":{"source":"MonitoringFacade.Builder.create(stack, \"Monitoring\")\n        .metricFactoryDefaults(Map.of(\n                // Different region/account than what you're deploying to\n                \"region\", \"us-west-2\",\n                \"account\", \"01234567890\"))\n        .build();","version":"1"},"go":{"source":"NewMonitoringFacade(stack, jsii.String(\"Monitoring\"), map[string]map[string]*string{\n\t\"metricFactoryDefaults\": map[string]*string{\n\t\t// Different region/account than what you're deploying to\n\t\t\"region\": jsii.String(\"us-west-2\"),\n\t\t\"account\": jsii.String(\"01234567890\"),\n\t},\n})","version":"1"},"$":{"source":"new MonitoringFacade(stack, \"Monitoring\", {\n  metricFactoryDefaults: {\n    // Different region/account than what you're deploying to\n    region: \"us-west-2\",\n    account: \"01234567890\",\n  }\n});","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":440}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\nnew MonitoringFacade(stack, \"Monitoring\", {\n  metricFactoryDefaults: {\n    // Different region/account than what you're deploying to\n    region: \"us-west-2\",\n    account: \"01234567890\",\n  }\n});\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"10":3,"75":5,"193":2,"197":1,"226":1,"281":3},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"53c84f98de03602c52516f4262addcc0c09e641c78ef15543c619c88b19a9886":{"translations":{"python":{"source":"monitoring.monitor_dynamo_table(\n    # Table from the same account/region\n    table=Table.from_table_name(stack, \"ImportedTable\", \"MyTableName\")\n).monitor_dynamo_table(\n    # Table from another account/region\n    table=Table.from_table_arn(stack, \"XaXrImportedTable\", \"arn:aws:dynamodb:us-west-2:01234567890:table/my-other-table\"),\n    region=\"us-west-2\",\n    account=\"01234567890\"\n)","version":"3"},"csharp":{"source":"monitoring.MonitorDynamoTable(new Struct {\n    // Table from the same account/region\n    Table = Table.FromTableName(stack, \"ImportedTable\", \"MyTableName\")\n}).MonitorDynamoTable(new Struct {\n    // Table from another account/region\n    Table = Table.FromTableArn(stack, \"XaXrImportedTable\", \"arn:aws:dynamodb:us-west-2:01234567890:table/my-other-table\"),\n    Region = \"us-west-2\",\n    Account = \"01234567890\"\n});","version":"1"},"java":{"source":"monitoring.monitorDynamoTable(Map.of(\n        // Table from the same account/region\n        \"table\", Table.fromTableName(stack, \"ImportedTable\", \"MyTableName\"))).monitorDynamoTable(Map.of(\n        // Table from another account/region\n        \"table\", Table.fromTableArn(stack, \"XaXrImportedTable\", \"arn:aws:dynamodb:us-west-2:01234567890:table/my-other-table\"),\n        \"region\", \"us-west-2\",\n        \"account\", \"01234567890\"));","version":"1"},"go":{"source":"monitoring.monitorDynamoTable(map[string]interface{}{\n\t// Table from the same account/region\n\t\"table\": Table_fromTableName(stack, jsii.String(\"ImportedTable\"), jsii.String(\"MyTableName\")),\n}).monitorDynamoTable(map[string]interface{}{\n\t// Table from another account/region\n\t\"table\": Table_fromTableArn(stack, jsii.String(\"XaXrImportedTable\"), jsii.String(\"arn:aws:dynamodb:us-west-2:01234567890:table/my-other-table\")),\n\t\"region\": jsii.String(\"us-west-2\"),\n\t\"account\": jsii.String(\"01234567890\"),\n})","version":"1"},"$":{"source":"monitoring\n  .monitorDynamoTable({\n    // Table from the same account/region\n    table: Table.fromTableName(stack, \"ImportedTable\", \"MyTableName\"),\n  })\n  .monitorDynamoTable({\n    // Table from another account/region\n    table: Table.fromTableArn(\n      stack,\n      \"XaXrImportedTable\",\n      \"arn:aws:dynamodb:us-west-2:01234567890:table/my-other-table\",\n    ),\n    region: \"us-west-2\",\n    account: \"01234567890\",\n  });","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":452}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\nmonitoring\n  .monitorDynamoTable({\n    // Table from the same account/region\n    table: Table.fromTableName(stack, \"ImportedTable\", \"MyTableName\"),\n  })\n  .monitorDynamoTable({\n    // Table from another account/region\n    table: Table.fromTableArn(\n      stack,\n      \"XaXrImportedTable\",\n      \"arn:aws:dynamodb:us-west-2:01234567890:table/my-other-table\",\n    ),\n    region: \"us-west-2\",\n    account: \"01234567890\",\n  });\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"10":6,"75":13,"193":2,"194":4,"196":4,"226":1,"281":4},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"32560a7deb762e12b050d0049de05f288123646579ae9a40efefad48bc7fb370":{"translations":{"python":{"source":"monitoring.monitor_scope(stack,\n    # With optional configuration\n    lambda_={\n        \"props\": {\n            \"add_latency_p50_alarm\": {\n                \"Critical\": {\"max_latency\": Duration.seconds(10)}\n            }\n        }\n    },\n\n    # Some resources that aren't dependent on nodes (e.g. general metrics across instances/account) may be included\n    # by default, which can be explicitly disabled.\n    billing={\"enabled\": False},\n    ec2={\"enabled\": False},\n    elastic_cache={\"enabled\": False}\n)","version":"3"},"csharp":{"source":"monitoring.MonitorScope(stack, new Struct {\n    // With optional configuration\n    Lambda = new Struct {\n        Props = new Struct {\n            AddLatencyP50Alarm = new Struct {\n                Critical = new Struct { MaxLatency = Duration.Seconds(10) }\n            }\n        }\n    },\n\n    // Some resources that aren't dependent on nodes (e.g. general metrics across instances/account) may be included\n    // by default, which can be explicitly disabled.\n    Billing = new Struct { Enabled = false },\n    Ec2 = new Struct { Enabled = false },\n    ElasticCache = new Struct { Enabled = false }\n});","version":"1"},"java":{"source":"monitoring.monitorScope(stack, Map.of(\n        // With optional configuration\n        \"lambda\", Map.of(\n                \"props\", Map.of(\n                        \"addLatencyP50Alarm\", Map.of(\n                                \"Critical\", Map.of(\"maxLatency\", Duration.seconds(10))))),\n\n        // Some resources that aren't dependent on nodes (e.g. general metrics across instances/account) may be included\n        // by default, which can be explicitly disabled.\n        \"billing\", Map.of(\"enabled\", false),\n        \"ec2\", Map.of(\"enabled\", false),\n        \"elasticCache\", Map.of(\"enabled\", false)));","version":"1"},"go":{"source":"monitoring.monitorScope(stack, map[string]map[string]map[string]map[string]map[string]interface{}{\n\t// With optional configuration\n\t\"lambda\": map[string]map[string]map[string]map[string]interface{}{\n\t\t\"props\": map[string]map[string]map[string]interface{}{\n\t\t\t\"addLatencyP50Alarm\": map[string]map[string]interface{}{\n\t\t\t\t\"Critical\": map[string]interface{}{\n\t\t\t\t\t\"maxLatency\": Duration_seconds(jsii.Number(10)),\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\t},\n\n\t// Some resources that aren't dependent on nodes (e.g. general metrics across instances/account) may be included\n\t// by default, which can be explicitly disabled.\n\t\"billing\": map[string]*bool{\n\t\t\"enabled\": jsii.Boolean(false),\n\t},\n\t\"ec2\": map[string]*bool{\n\t\t\"enabled\": jsii.Boolean(false),\n\t},\n\t\"elasticCache\": map[string]*bool{\n\t\t\"enabled\": jsii.Boolean(false),\n\t},\n})","version":"1"},"$":{"source":"monitoring.monitorScope(stack, {\n  // With optional configuration\n  lambda: {\n    props: {\n      addLatencyP50Alarm: {\n        Critical: { maxLatency: Duration.seconds(10) },\n      },\n    },\n  },\n\n  // Some resources that aren't dependent on nodes (e.g. general metrics across instances/account) may be included\n  // by default, which can be explicitly disabled.\n  billing: { enabled: false },\n  ec2: { enabled: false },\n  elasticCache: { enabled: false },\n});","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":482}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\nmonitoring.monitorScope(stack, {\n  // With optional configuration\n  lambda: {\n    props: {\n      addLatencyP50Alarm: {\n        Critical: { maxLatency: Duration.seconds(10) },\n      },\n    },\n  },\n\n  // Some resources that aren't dependent on nodes (e.g. general metrics across instances/account) may be included\n  // by default, which can be explicitly disabled.\n  billing: { enabled: false },\n  ec2: { enabled: false },\n  elasticCache: { enabled: false },\n});\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"8":1,"75":16,"91":3,"193":8,"194":2,"196":2,"226":1,"281":11},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"bddb91a2017ea7c421854a7b1e26dbf54cc2a0f26d9a7452e32f97bc06ea1f8d":{"translations":{"python":{"source":"# Clone alarms using a cloning-function\ncritical_alarms = monitoring.created_alarms_with_disambiguator(\"Critical\")\nclones = monitoring.clone_alarms(critical_alarms, (a) => {\n       // Define a new alarm that has values inspired by the original alarm\n       // Adjust some of those values using arbitrary, user-provided logic\n       return {\n          ...a.alarmDefinition.addAlarmProps,\n          actionsEnabled: false,\n          disambiguator: \"ClonedCritical\",\n          alarmDescription: \"Cloned alarm of \" + a.alarmDescription,\n          // Bump the threshold a bit\n          threshold: a.alarmDefinition.addAlarmProps.threshold * 1.1,\n          // Tighten the number of datapoints a bit\n          datapointsToAlarm: a.alarmDefinition.datapointsToAlarm - 1,\n          // Keep the same number of evaluation periods\n          evaluationPeriods: a.alarmDefinition.evaluationPeriods,\n       }\n    })","version":"3"},"csharp":{"source":"// Clone alarms using a cloning-function\nvar criticalAlarms = monitoring.CreatedAlarmsWithDisambiguator(\"Critical\");\nvar clones = monitoring.CloneAlarms(criticalAlarms, (a) => {\n   // Define a new alarm that has values inspired by the original alarm\n   // Adjust some of those values using arbitrary, user-provided logic\n   return {\n      ...a.alarmDefinition.addAlarmProps,\n      actionsEnabled: false,\n      disambiguator: \"ClonedCritical\",\n      alarmDescription: \"Cloned alarm of \" + a.alarmDescription,\n      // Bump the threshold a bit\n      threshold: a.alarmDefinition.addAlarmProps.threshold * 1.1,\n      // Tighten the number of datapoints a bit\n      datapointsToAlarm: a.alarmDefinition.datapointsToAlarm - 1,\n      // Keep the same number of evaluation periods\n      evaluationPeriods: a.alarmDefinition.evaluationPeriods,\n   }\n});","version":"1"},"java":{"source":"// Clone alarms using a cloning-function\nObject criticalAlarms = monitoring.createdAlarmsWithDisambiguator(\"Critical\");\nObject clones = monitoring.cloneAlarms(criticalAlarms, (a) => {\n   // Define a new alarm that has values inspired by the original alarm\n   // Adjust some of those values using arbitrary, user-provided logic\n   return {\n      ...a.alarmDefinition.addAlarmProps,\n      actionsEnabled: false,\n      disambiguator: \"ClonedCritical\",\n      alarmDescription: \"Cloned alarm of \" + a.alarmDescription,\n      // Bump the threshold a bit\n      threshold: a.alarmDefinition.addAlarmProps.threshold * 1.1,\n      // Tighten the number of datapoints a bit\n      datapointsToAlarm: a.alarmDefinition.datapointsToAlarm - 1,\n      // Keep the same number of evaluation periods\n      evaluationPeriods: a.alarmDefinition.evaluationPeriods,\n   }\n});","version":"1"},"go":{"source":"// Clone alarms using a cloning-function\ncriticalAlarms := monitoring.createdAlarmsWithDisambiguator(jsii.String(\"Critical\"))\nclones := monitoring.cloneAlarms(criticalAlarms, (a) => {\n   // Define a new alarm that has values inspired by the original alarm\n   // Adjust some of those values using arbitrary, user-provided logic\n   return {\n      ...a.alarmDefinition.addAlarmProps,\n      actionsEnabled: false,\n      disambiguator: \"ClonedCritical\",\n      alarmDescription: \"Cloned alarm of \" + a.alarmDescription,\n      // Bump the threshold a bit\n      threshold: a.alarmDefinition.addAlarmProps.threshold * 1.1,\n      // Tighten the number of datapoints a bit\n      datapointsToAlarm: a.alarmDefinition.datapointsToAlarm - 1,\n      // Keep the same number of evaluation periods\n      evaluationPeriods: a.alarmDefinition.evaluationPeriods,\n   }\n})","version":"1"},"$":{"source":"// Clone alarms using a cloning-function\nconst criticalAlarms = monitoring.createdAlarmsWithDisambiguator(\"Critical\");\nconst clones = monitoring.cloneAlarms(criticalAlarms, (a) => {\n   // Define a new alarm that has values inspired by the original alarm\n   // Adjust some of those values using arbitrary, user-provided logic\n   return {\n      ...a.alarmDefinition.addAlarmProps,\n      actionsEnabled: false,\n      disambiguator: \"ClonedCritical\",\n      alarmDescription: \"Cloned alarm of \" + a.alarmDescription,\n      // Bump the threshold a bit\n      threshold: a.alarmDefinition.addAlarmProps.threshold * 1.1,\n      // Tighten the number of datapoints a bit\n      datapointsToAlarm: a.alarmDefinition.datapointsToAlarm - 1,\n      // Keep the same number of evaluation periods\n      evaluationPeriods: a.alarmDefinition.evaluationPeriods,\n   }\n});","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":508}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\n// Clone alarms using a cloning-function\nconst criticalAlarms = monitoring.createdAlarmsWithDisambiguator(\"Critical\");\nconst clones = monitoring.cloneAlarms(criticalAlarms, (a) => {\n   // Define a new alarm that has values inspired by the original alarm\n   // Adjust some of those values using arbitrary, user-provided logic\n   return {\n      ...a.alarmDefinition.addAlarmProps,\n      actionsEnabled: false,\n      disambiguator: \"ClonedCritical\",\n      alarmDescription: \"Cloned alarm of \" + a.alarmDescription,\n      // Bump the threshold a bit\n      threshold: a.alarmDefinition.addAlarmProps.threshold * 1.1,\n      // Tighten the number of datapoints a bit\n      datapointsToAlarm: a.alarmDefinition.datapointsToAlarm - 1,\n      // Keep the same number of evaluation periods\n      evaluationPeriods: a.alarmDefinition.evaluationPeriods,\n   }\n});\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"8":2,"10":3,"38":1,"39":1,"40":1,"41":1,"75":29,"91":1,"156":1,"193":1,"194":12,"196":2,"202":1,"209":3,"223":1,"225":2,"235":1,"242":2,"243":2,"281":6,"283":1},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"8216c9099acc14ab8cb03e486034bfcadb3d98003e78ca4c17d88ca1b793cc91":{"translations":{"python":{"source":"# Clone critical alarms using a tighting scaling function\ncritical_alarms = monitoring.created_alarms_with_disambiguator(\"Critical\")\nrollback_alarms = monitoring.clone_alarms(critical_alarms, ScaleAlarms(\n    disambiguator=\"Rollback\",\n    threshold_multiplier=0.8,\n    datapoints_to_alarm_multiplier=0.3,\n    evaluation_periods_multiplier=0.5\n))","version":"3"},"csharp":{"source":"// Clone critical alarms using a tighting scaling function\nvar criticalAlarms = monitoring.CreatedAlarmsWithDisambiguator(\"Critical\");\nvar rollbackAlarms = monitoring.CloneAlarms(criticalAlarms, ScaleAlarms(new Struct {\n    Disambiguator = \"Rollback\",\n    ThresholdMultiplier = 0.8,\n    DatapointsToAlarmMultiplier = 0.3,\n    EvaluationPeriodsMultiplier = 0.5\n}));","version":"1"},"java":{"source":"// Clone critical alarms using a tighting scaling function\nObject criticalAlarms = monitoring.createdAlarmsWithDisambiguator(\"Critical\");\nObject rollbackAlarms = monitoring.cloneAlarms(criticalAlarms, ScaleAlarms(Map.of(\n        \"disambiguator\", \"Rollback\",\n        \"thresholdMultiplier\", 0.8,\n        \"datapointsToAlarmMultiplier\", 0.3,\n        \"evaluationPeriodsMultiplier\", 0.5)));","version":"1"},"go":{"source":"// Clone critical alarms using a tighting scaling function\ncriticalAlarms := monitoring.createdAlarmsWithDisambiguator(jsii.String(\"Critical\"))\nrollbackAlarms := monitoring.cloneAlarms(criticalAlarms, scaleAlarms(map[string]interface{}{\n\t\"disambiguator\": jsii.String(\"Rollback\"),\n\t\"thresholdMultiplier\": jsii.Number(0.8),\n\t\"datapointsToAlarmMultiplier\": jsii.Number(0.3),\n\t\"evaluationPeriodsMultiplier\": jsii.Number(0.5),\n}))","version":"1"},"$":{"source":"// Clone critical alarms using a tighting scaling function\nconst criticalAlarms = monitoring.createdAlarmsWithDisambiguator(\"Critical\");\nconst rollbackAlarms = monitoring.cloneAlarms(criticalAlarms, ScaleAlarms({\n   disambiguator: \"Rollback\",\n   thresholdMultiplier: 0.8,\n   datapointsToAlarmMultiplier: 0.3,\n   evaluationPeriodsMultiplier: 0.5,\n}));","version":"0"}},"location":{"api":{"api":"moduleReadme","moduleFqn":"cdk-monitoring-constructs"},"field":{"field":"markdown","line":541}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\n// Clone critical alarms using a tighting scaling function\nconst criticalAlarms = monitoring.createdAlarmsWithDisambiguator(\"Critical\");\nconst rollbackAlarms = monitoring.cloneAlarms(criticalAlarms, ScaleAlarms({\n   disambiguator: \"Rollback\",\n   thresholdMultiplier: 0.8,\n   datapointsToAlarmMultiplier: 0.3,\n   evaluationPeriodsMultiplier: 0.5,\n}));\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"8":3,"10":2,"75":12,"193":1,"194":2,"196":3,"225":2,"242":2,"243":2,"281":4},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"63c7ea5ddbf811fc8d3c721a2f699196d8bd4ab54a24dceee74fffc1e21333fd":{"translations":{"python":{"source":"exports.handler = function (event, context, callback) {\n   return callback(null, \"<h1>Hello! This is a custom widget.</h1><pre>\" + JSON.stringify(event, null, 2) + \"</pre>\");\n}","version":"3"},"csharp":{"source":"exports.Handler = function (event, context, callback) {\n   return callback(null, \"<h1>Hello! This is a custom widget.</h1><pre>\" + JSON.stringify(event, null, 2) + \"</pre>\");\n};","version":"1"},"java":{"source":"exports.getHandler() = function (event, context, callback) {\n   return callback(null, \"<h1>Hello! This is a custom widget.</h1><pre>\" + JSON.stringify(event, null, 2) + \"</pre>\");\n};","version":"1"},"go":{"source":"exports.handler = function (event, context, callback) {\n   return callback(null, \"<h1>Hello! This is a custom widget.</h1><pre>\" + JSON.stringify(event, null, 2) + \"</pre>\");\n}","version":"1"},"$":{"source":"exports.handler = function (event, context, callback) {\n   return callback(null, \"<h1>Hello! This is a custom widget.</h1><pre>\" + JSON.stringify(event, null, 2) + \"</pre>\");\n};","version":"0"}},"location":{"api":{"api":"member","fqn":"cdk-monitoring-constructs.CustomWidgetProps","memberName":"handler"},"field":{"field":"markdown","line":3}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\nexports.handler = function (event, context, callback) {\n   return callback(null, \"<h1>Hello! This is a custom widget.</h1><pre>\" + JSON.stringify(event, null, 2) + \"</pre>\");\n};\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"8":1,"10":2,"39":2,"62":1,"75":9,"100":2,"156":3,"194":2,"196":2,"201":1,"209":3,"223":1,"226":1,"235":1},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"0c86c3982fc9d1542e1dbe53cfc0912eeeefc7f4d03236649ce116b6ae86331b":{"translations":{"python":{"source":"filter_expressions = [\"level = \\\"ERROR\\\"\"] | filterlevel = \"ERROR\"","version":"3"},"csharp":{"source":"filterExpressions = new [] { \"level = \\\"ERROR\\\"\" } | filter;level = \"ERROR\";","version":"1"},"java":{"source":"filterExpressions = List.of(\"level = \\\"ERROR\\\"\") | filter;level = \"ERROR\";","version":"1"},"go":{"source":"filterExpressions = []*string{\n\t\"level = \\\"ERROR\\\"\",\n} | filterlevel = \"ERROR\"","version":"1"},"$":{"source":"filterExpressions = [`level = \"ERROR\"`]\n// will be appended to the query as\n| filter level = \"ERROR\"","version":"0"}},"location":{"api":{"api":"member","fqn":"cdk-monitoring-constructs.LogMonitoringProps","memberName":"filterExpressions"},"field":{"field":"example"}},"didCompile":false,"fqnsReferenced":[],"fullSource":"// Fixture with packages imported, but nothing else\nimport { Construct } from 'constructs';\nimport {\n  Stack,\n} from 'aws-cdk-lib';\n\nclass Fixture extends Stack {\n  constructor(scope: Construct, id: string) {\n    super(scope, id);\n\n    // Code snippet begins after !show marker below\n/// !show\nfilterExpressions = [`level = \"ERROR\"`]\n// will be appended to the query as\n| filter level = \"ERROR\"\n/// !hide\n// Code snippet ended before !hide marker above\n  }\n}","syntaxKindCounter":{"10":1,"14":1,"51":1,"62":2,"75":3,"192":1,"209":3,"226":2},"fqnsFingerprint":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"}}}