Skip to content

Commit 3d9be79

Browse files
committed
Update AWS CloudWatch dashboards
1 parent a79e232 commit 3d9be79

47 files changed

Lines changed: 6044 additions & 0 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

dashboards/aws/README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# AWS CloudWatch dashboards
2+
3+
These dashboard files are managed by the [cloudwatch-dashboards](https://github.com/appsignal/cloudwatch-dashboards) repository. Do not edit them directly — changes will be overwritten on the next publish.

dashboards/aws/ai_ml_bedrock.json

Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,118 @@
1+
{
2+
"label": "beta",
3+
"metric_keys": [
4+
"aws_bedrock_invocations"
5+
],
6+
"dashboard": {
7+
"title": "AWS/Bedrock",
8+
"description": "Monitor Amazon Bedrock model invocations, latency, errors, throttles, and token usage.",
9+
"visuals": [
10+
{
11+
"type": "timeseries",
12+
"display": "line",
13+
"format": "number",
14+
"draw_null_as_zero": true,
15+
"title": "Invocations",
16+
"description": "Number of model invocation requests.",
17+
"line_label": "%name% %ModelId%",
18+
"metrics": [
19+
{
20+
"name": "aws_bedrock_invocations",
21+
"fields": [{ "field": "GAUGE" }],
22+
"tags": [{ "key": "ModelId", "value": "*" }]
23+
}
24+
]
25+
},
26+
{
27+
"type": "timeseries",
28+
"display": "line",
29+
"format": "number",
30+
"draw_null_as_zero": true,
31+
"title": "Invocation Errors",
32+
"description": "Client-side (4xx) and server-side (5xx) invocation errors.",
33+
"line_label": "%name% %ModelId%",
34+
"metrics": [
35+
{
36+
"name": "aws_bedrock_invocation_client_errors",
37+
"fields": [{ "field": "GAUGE" }],
38+
"tags": [{ "key": "ModelId", "value": "*" }]
39+
},
40+
{
41+
"name": "aws_bedrock_invocation_server_errors",
42+
"fields": [{ "field": "GAUGE" }],
43+
"tags": [{ "key": "ModelId", "value": "*" }]
44+
}
45+
]
46+
},
47+
{
48+
"type": "timeseries",
49+
"display": "line",
50+
"format": "duration",
51+
"draw_null_as_zero": false,
52+
"title": "Invocation Latency",
53+
"description": "Time taken to process model invocations.",
54+
"line_label": "%name% %ModelId%",
55+
"metrics": [
56+
{
57+
"name": "aws_bedrock_invocation_latency",
58+
"fields": [{ "field": "GAUGE" }],
59+
"tags": [{ "key": "ModelId", "value": "*" }]
60+
}
61+
]
62+
},
63+
{
64+
"type": "timeseries",
65+
"display": "line",
66+
"format": "number",
67+
"draw_null_as_zero": true,
68+
"title": "Throttles",
69+
"description": "Number of invocations throttled due to service limits.",
70+
"line_label": "%name% %ModelId%",
71+
"metrics": [
72+
{
73+
"name": "aws_bedrock_invocation_throttles",
74+
"fields": [{ "field": "GAUGE" }],
75+
"tags": [{ "key": "ModelId", "value": "*" }]
76+
}
77+
]
78+
},
79+
{
80+
"type": "timeseries",
81+
"display": "line",
82+
"format": "number",
83+
"draw_null_as_zero": true,
84+
"title": "Input vs Output Tokens",
85+
"description": "Number of tokens in model input and output.",
86+
"line_label": "%name% %ModelId%",
87+
"metrics": [
88+
{
89+
"name": "aws_bedrock_input_token_count",
90+
"fields": [{ "field": "GAUGE" }],
91+
"tags": [{ "key": "ModelId", "value": "*" }]
92+
},
93+
{
94+
"name": "aws_bedrock_output_token_count",
95+
"fields": [{ "field": "GAUGE" }],
96+
"tags": [{ "key": "ModelId", "value": "*" }]
97+
}
98+
]
99+
},
100+
{
101+
"type": "timeseries",
102+
"display": "line",
103+
"format": "number",
104+
"draw_null_as_zero": true,
105+
"title": "Output Images",
106+
"description": "Number of images generated by image models.",
107+
"line_label": "%name% %ModelId%",
108+
"metrics": [
109+
{
110+
"name": "aws_bedrock_output_image_count",
111+
"fields": [{ "field": "GAUGE" }],
112+
"tags": [{ "key": "ModelId", "value": "*" }]
113+
}
114+
]
115+
}
116+
]
117+
}
118+
}
Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,118 @@
1+
{
2+
"label": "beta",
3+
"metric_keys": [
4+
"aws_sagemaker_invocations"
5+
],
6+
"dashboard": {
7+
"title": "AWS/SageMaker",
8+
"description": "Monitor SageMaker endpoint invocations, errors, latency, and resource utilization.",
9+
"visuals": [
10+
{
11+
"type": "timeseries",
12+
"display": "line",
13+
"format": "number",
14+
"draw_null_as_zero": true,
15+
"title": "Invocations",
16+
"description": "Total invocations and per-instance invocation rate.",
17+
"line_label": "%name% %EndpointName%",
18+
"metrics": [
19+
{
20+
"name": "aws_sagemaker_invocations",
21+
"fields": [{ "field": "GAUGE" }],
22+
"tags": [{ "key": "EndpointName", "value": "*" }]
23+
},
24+
{
25+
"name": "aws_sagemaker_invocations_per_instance",
26+
"fields": [{ "field": "GAUGE" }],
27+
"tags": [{ "key": "EndpointName", "value": "*" }]
28+
}
29+
]
30+
},
31+
{
32+
"type": "timeseries",
33+
"display": "line",
34+
"format": "number",
35+
"draw_null_as_zero": true,
36+
"title": "Invocation Errors",
37+
"description": "Number of invocations that resulted in model errors (4xx/5xx).",
38+
"line_label": "%name% %EndpointName%",
39+
"metrics": [
40+
{
41+
"name": "aws_sagemaker_invocation_model_errors",
42+
"fields": [{ "field": "GAUGE" }],
43+
"tags": [{ "key": "EndpointName", "value": "*" }]
44+
}
45+
]
46+
},
47+
{
48+
"type": "timeseries",
49+
"display": "line",
50+
"format": "duration",
51+
"draw_null_as_zero": false,
52+
"title": "Latency",
53+
"description": "Time taken by the model to respond and SageMaker overhead latency.",
54+
"line_label": "%name% %EndpointName%",
55+
"metrics": [
56+
{
57+
"name": "aws_sagemaker_model_latency",
58+
"fields": [{ "field": "GAUGE" }],
59+
"tags": [{ "key": "EndpointName", "value": "*" }]
60+
},
61+
{
62+
"name": "aws_sagemaker_overhead_latency",
63+
"fields": [{ "field": "GAUGE" }],
64+
"tags": [{ "key": "EndpointName", "value": "*" }]
65+
}
66+
]
67+
},
68+
{
69+
"type": "timeseries",
70+
"display": "line",
71+
"format": "percent",
72+
"draw_null_as_zero": false,
73+
"title": "CPU Utilization",
74+
"description": "Percentage of CPU units used by endpoint instances.",
75+
"line_label": "%name% %EndpointName%",
76+
"metrics": [
77+
{
78+
"name": "aws_sagemaker_cpu_utilization",
79+
"fields": [{ "field": "GAUGE" }],
80+
"tags": [{ "key": "EndpointName", "value": "*" }]
81+
}
82+
]
83+
},
84+
{
85+
"type": "timeseries",
86+
"display": "line",
87+
"format": "percent",
88+
"draw_null_as_zero": false,
89+
"title": "Memory Utilization",
90+
"description": "Percentage of memory used by endpoint instances.",
91+
"line_label": "%name% %EndpointName%",
92+
"metrics": [
93+
{
94+
"name": "aws_sagemaker_memory_utilization",
95+
"fields": [{ "field": "GAUGE" }],
96+
"tags": [{ "key": "EndpointName", "value": "*" }]
97+
}
98+
]
99+
},
100+
{
101+
"type": "timeseries",
102+
"display": "line",
103+
"format": "percent",
104+
"draw_null_as_zero": false,
105+
"title": "Disk Utilization",
106+
"description": "Percentage of disk space used by endpoint instances.",
107+
"line_label": "%name% %EndpointName%",
108+
"metrics": [
109+
{
110+
"name": "aws_sagemaker_disk_utilization",
111+
"fields": [{ "field": "GAUGE" }],
112+
"tags": [{ "key": "EndpointName", "value": "*" }]
113+
}
114+
]
115+
}
116+
]
117+
}
118+
}
Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,71 @@
1+
{
2+
"label": "beta",
3+
"metric_keys": [
4+
"aws_athena_total_execution_time"
5+
],
6+
"dashboard": {
7+
"title": "AWS/Athena",
8+
"description": "Monitor Athena query execution times, query phase durations, and data scanned.",
9+
"visuals": [
10+
{
11+
"type": "timeseries",
12+
"display": "line",
13+
"format": "duration",
14+
"draw_null_as_zero": false,
15+
"title": "Query Execution Time",
16+
"description": "Total time to execute a query including queue and planning time.",
17+
"line_label": "%name% %WorkGroup%",
18+
"metrics": [
19+
{
20+
"name": "aws_athena_total_execution_time",
21+
"fields": [{ "field": "GAUGE" }],
22+
"tags": [{ "key": "WorkGroup", "value": "*" }]
23+
}
24+
]
25+
},
26+
{
27+
"type": "timeseries",
28+
"display": "line",
29+
"format": "duration",
30+
"draw_null_as_zero": false,
31+
"title": "Query Phases",
32+
"description": "Time spent in queue, planning, and processing phases.",
33+
"line_label": "%name% %WorkGroup%",
34+
"metrics": [
35+
{
36+
"name": "aws_athena_query_queue_time",
37+
"fields": [{ "field": "GAUGE" }],
38+
"tags": [{ "key": "WorkGroup", "value": "*" }]
39+
},
40+
{
41+
"name": "aws_athena_query_planning_time",
42+
"fields": [{ "field": "GAUGE" }],
43+
"tags": [{ "key": "WorkGroup", "value": "*" }]
44+
},
45+
{
46+
"name": "aws_athena_service_processing_time",
47+
"fields": [{ "field": "GAUGE" }],
48+
"tags": [{ "key": "WorkGroup", "value": "*" }]
49+
}
50+
]
51+
},
52+
{
53+
"type": "timeseries",
54+
"display": "line",
55+
"format": "size",
56+
"format_input": "byte",
57+
"draw_null_as_zero": true,
58+
"title": "Data Scanned",
59+
"description": "Amount of data scanned by queries.",
60+
"line_label": "%name% %WorkGroup%",
61+
"metrics": [
62+
{
63+
"name": "aws_athena_processed_bytes",
64+
"fields": [{ "field": "GAUGE" }],
65+
"tags": [{ "key": "WorkGroup", "value": "*" }]
66+
}
67+
]
68+
}
69+
]
70+
}
71+
}

0 commit comments

Comments
 (0)