From 7bc52fb92bb62797f5d327d2c38e1473fc536a09 Mon Sep 17 00:00:00 2001 From: Raj Kamal Singh <1133322+raj-k-singh@users.noreply.github.com> Date: Tue, 4 Mar 2025 13:18:42 +0530 Subject: [PATCH] feat: aws integration: add service definition for ALB (#7185) * feat: aws integration: add service definition for ALB * chore: add overview and icon for ALB * chore: some cleanup * feat: aws integration: alb: use sum aggregation for appropriate metrics --- .../aws/alb/assets/dashboards/overview.json | 1887 +++++++++++++++++ .../aws/alb/assets/dashboards/overview.png | Bin 0 -> 128236 bytes .../serviceDefinitions/aws/alb/icon.svg | 1 + .../aws/alb/integration.json | 467 ++++ .../serviceDefinitions/aws/alb/overview.md | 3 + 5 files changed, 2358 insertions(+) create mode 100644 pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/assets/dashboards/overview.json create mode 100644 pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/assets/dashboards/overview.png create mode 100644 pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/icon.svg create mode 100644 pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/integration.json create mode 100644 pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/overview.md diff --git a/pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/assets/dashboards/overview.json b/pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/assets/dashboards/overview.json new file mode 100644 index 0000000000..38c60cba79 --- /dev/null +++ b/pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/assets/dashboards/overview.json @@ -0,0 +1,1887 @@ +{ + "description": "Overview of Application Load Balancers", + "image": "data:image/svg+xml;base64,CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayIgdmlld0JveD0iMCAwIDg1IDg1IiBmaWxsPSIjZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiIHN0cm9rZT0iIzAwMCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIj48dXNlIHhsaW5rOmhyZWY9IiNBIiB4PSIyLjUiIHk9IjIuNSIvPjxzeW1ib2wgaWQ9IkEiIG92ZXJmbG93PSJ2aXNpYmxlIj48ZyBzdHJva2U9Im5vbmUiPjxwYXRoIGQ9Ik0wIDQxLjU3OUMwIDIwLjI5MyAxNy44NCAzLjE1NyA0MCAzLjE1N3M0MCAxNy4xMzYgNDAgMzguNDIyUzYyLjE2IDgwIDQwIDgwIDAgNjIuODY0IDAgNDEuNTc5eiIgZmlsbD0iIzlkNTAyNSIvPjxwYXRoIGQ9Ik0wIDM4LjQyMkMwIDE3LjEzNiAxNy44NCAwIDQwIDBzNDAgMTcuMTM2IDQwIDM4LjQyMi0xNy44NCAzOC40MjItNDAgMzguNDIyUzAgNTkuNzA3IDAgMzguNDIyeiIgZmlsbD0iI2Y1ODUzNiIvPjxwYXRoIGQ9Ik01MS42NzIgNy4zODd2MTMuOTUySDI4LjMyN1Y3LjM4N3ptMTguMDYxIDQwLjM3OHYxMS4zNjRoLTExLjgzVjQ3Ljc2NXptLTE0Ljk1OCAwdjExLjM2NGgtMTEuODNWNDcuNzY1em0tMTguMjA2IDB2MTEuMzY0aC0xMS44M1Y0Ny43NjV6bS0xNC45NTkgMHYxMS4zNjRIOS43OFY0Ny43NjV6Ii8+PHBhdGggZD0iTTE0LjYzIDM3LjkyOWgyLjEzdjExLjE0OWgtMi4xM3oiLz48cGF0aCBkPSJNMTQuNjMgMzcuOTI5aDE3LjA4OHYyLjA0NUgxNC42M3oiLz48cGF0aCBkPSJNMjkuNTg5IDM3LjkyOWgyLjEzdjExLjE0OUgyOS41OXptMTguMjA2IDBoMi4xM3YxMS4xNDloLTIuMTN6Ii8+PHBhdGggZD0iTTQ3Ljc5NSAzNy45MjloMTcuMDg4djIuMDQ1SDQ3Ljc5NXoiLz48cGF0aCBkPSJNNjIuNzU0IDM3LjkyOWgyLjEzdjExLjE0OWgtMi4xMjl6bS00MC42MzEtNy45NTRoMi4xM3Y4Ljk3N2gtMi4xM3pNMzguOTM1IDE5LjI4aDIuMTN2MTAuODU5aC0yLjEyOXoiLz48cGF0aCBkPSJNMjIuMTIzIDI5LjExNmgzNS4zMnYyLjA0NWgtMzUuMzJ6Ii8+PHBhdGggZD0iTTU1LjMxNCAyOS45NzVoMi4xM3Y4Ljk3N2gtMi4xMjl6Ii8+PC9nPjwvc3ltYm9sPjwvc3ZnPg==", + "layout": [ + { + "h": 5, + "i": "e13232f0-6308-4466-94c0-629cae762ff0", + "moved": false, + "static": false, + "w": 6, + "x": 0, + "y": 0 + }, + { + "h": 5, + "i": "9b99d70a-f12a-4df7-9a68-660a0ab55e42", + "moved": false, + "static": false, + "w": 6, + "x": 6, + "y": 0 + }, + { + "h": 5, + "i": "5a9ec75f-3bcd-4829-94e6-452caa2cc0d2", + "moved": false, + "static": false, + "w": 6, + "x": 0, + "y": 5 + }, + { + "h": 5, + "i": "e16fb999-491b-4cfa-b9aa-d558f2132b6b", + "moved": false, + "static": false, + "w": 6, + "x": 6, + "y": 5 + }, + { + "h": 5, + "i": "2be35406-693a-435b-a844-2df239be0b60", + "moved": false, + "static": false, + "w": 6, + "x": 0, + "y": 10 + }, + { + "h": 5, + "i": "480ecee2-1271-4dfd-a7bb-9f9845957c6e", + "moved": false, + "static": false, + "w": 6, + "x": 6, + "y": 10 + }, + { + "h": 5, + "i": "2243e542-0bbc-4e2a-a4dd-2e121abc9b95", + "moved": false, + "static": false, + "w": 6, + "x": 0, + "y": 15 + }, + { + "h": 5, + "i": "3bb56361-9a67-47ce-b186-ccee02e15f51", + "moved": false, + "static": false, + "w": 6, + "x": 6, + "y": 15 + }, + { + "h": 5, + "i": "36cbc321-6c02-4d13-895e-955d71d376b4", + "moved": false, + "static": false, + "w": 6, + "x": 0, + "y": 20 + } + ], + "panelMap": {}, + "tags": [], + "title": "Application Load Balancer Overview", + "uploadedGrafana": false, + "variables": { + "Account": { + "allSelected": false, + "customValue": "", + "description": "AWS Account", + "id": "d5ef5880-68b1-4097-b4e5-9ce74200831f", + "key": "d5ef5880-68b1-4097-b4e5-9ce74200831f", + "modificationUUID": "9974ddda-3bc1-401d-b04a-364ea9a23866", + "multiSelect": false, + "name": "Account", + "order": 0, + "queryValue": "SELECT JSONExtractString(labels, 'cloud_account_id') as cloud_account_id\nFROM signoz_metrics.distributed_time_series_v4_1day\nWHERE \n metric_name like 'aws_ApplicationELB_ConsumedLCUs_max'\nGROUP BY cloud_account_id", + "showALLOption": false, + "sort": "DISABLED", + "textboxValue": "", + "type": "QUERY" + }, + "Region": { + "allSelected": false, + "customValue": "", + "description": "AWS Region", + "id": "bad33abd-ab38-493b-b23e-131659b6d03c", + "key": "bad33abd-ab38-493b-b23e-131659b6d03c", + "modificationUUID": "1aa1ef37-260c-4ca9-8aa9-f2ffb289c9e3", + "multiSelect": false, + "name": "Region", + "order": 1, + "queryValue": "SELECT JSONExtractString(labels, 'cloud_region') as cloud_region\nFROM signoz_metrics.distributed_time_series_v4_1day\nWHERE \n metric_name like 'aws_ApplicationELB_ConsumedLCUs_max'\n and JSONExtractString(labels, 'cloud_account_id') IN {{.Account}}\nGROUP BY cloud_region\n", + "showALLOption": false, + "sort": "DISABLED", + "textboxValue": "", + "type": "QUERY" + } + }, + "version": "v4", + "widgets": [ + { + "bucketCount": 30, + "bucketWidth": 0, + "columnUnits": {}, + "description": "The time elapsed, after the request leaves the load balancer until the target starts to send the response headers.\n\nSee TargetResponseTime at https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html", + "fillSpans": false, + "id": "9b99d70a-f12a-4df7-9a68-660a0ab55e42", + "isStacked": false, + "mergeAllActiveQueries": false, + "nullZeroValues": "zero", + "opacity": "1", + "panelTypes": "graph", + "query": { + "builder": { + "queryData": [ + { + "aggregateAttribute": { + "dataType": "float64", + "id": "aws_ApplicationELB_TargetResponseTime_max--float64--Gauge--true", + "isColumn": true, + "isJSON": false, + "key": "aws_ApplicationELB_TargetResponseTime_max", + "type": "Gauge" + }, + "aggregateOperator": "max", + "dataSource": "metrics", + "disabled": false, + "expression": "A", + "filters": { + "items": [ + { + "id": "b282d9f1", + "key": { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + "op": "=", + "value": "$Account" + }, + { + "id": "71837c70", + "key": { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + }, + "op": "=", + "value": "$Region" + }, + { + "id": "5bfcc581", + "key": { + "dataType": "string", + "id": "TargetGroup--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "TargetGroup", + "type": "tag" + }, + "op": "nexists", + "value": "" + }, + { + "id": "a9e33e08", + "key": { + "dataType": "string", + "id": "AvailabilityZone--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "AvailabilityZone", + "type": "tag" + }, + "op": "nexists", + "value": "" + } + ], + "op": "AND" + }, + "functions": [], + "groupBy": [ + { + "dataType": "string", + "id": "LoadBalancer--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "LoadBalancer", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + } + ], + "having": [], + "legend": "{{LoadBalancer}}", + "limit": null, + "orderBy": [], + "queryName": "A", + "reduceTo": "avg", + "spaceAggregation": "max", + "stepInterval": 60, + "timeAggregation": "max" + } + ], + "queryFormulas": [] + }, + "clickhouse_sql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "id": "601aca8a-36fb-4e6a-b234-39294b9b305b", + "promql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "queryType": "builder" + }, + "selectedLogFields": [ + { + "dataType": "string", + "name": "body", + "type": "" + }, + { + "dataType": "string", + "name": "timestamp", + "type": "" + } + ], + "selectedTracesFields": [ + { + "dataType": "string", + "id": "serviceName--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "serviceName", + "type": "tag" + }, + { + "dataType": "string", + "id": "name--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "name", + "type": "tag" + }, + { + "dataType": "float64", + "id": "durationNano--float64--tag--true", + "isColumn": true, + "isJSON": false, + "key": "durationNano", + "type": "tag" + }, + { + "dataType": "string", + "id": "httpMethod--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "httpMethod", + "type": "tag" + }, + { + "dataType": "string", + "id": "responseStatusCode--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "responseStatusCode", + "type": "tag" + } + ], + "softMax": 0, + "softMin": 0, + "stackedBarChart": false, + "thresholds": [], + "timePreferance": "GLOBAL_TIME", + "title": "Target Response Time", + "yAxisUnit": "s" + }, + { + "bucketCount": 30, + "bucketWidth": 0, + "columnUnits": {}, + "description": "The number of requests processed over IPv4 and IPv6. This metric is only incremented for requests where the load balancer node was able to choose a target. Requests that are rejected before a target is chosen are not reflected in this metric.\n\nSee RequestCount at https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html", + "fillSpans": false, + "id": "e13232f0-6308-4466-94c0-629cae762ff0", + "isStacked": false, + "mergeAllActiveQueries": false, + "nullZeroValues": "zero", + "opacity": "1", + "panelTypes": "graph", + "query": { + "builder": { + "queryData": [ + { + "aggregateAttribute": { + "dataType": "float64", + "id": "aws_ApplicationELB_RequestCount_sum--float64--Gauge--true", + "isColumn": true, + "isJSON": false, + "key": "aws_ApplicationELB_RequestCount_sum", + "type": "Gauge" + }, + "aggregateOperator": "sum", + "dataSource": "metrics", + "disabled": false, + "expression": "A", + "filters": { + "items": [ + { + "id": "448b551a", + "key": { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + "op": "=", + "value": "$Account" + }, + { + "id": "a8821216", + "key": { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + }, + "op": "=", + "value": "$Region" + }, + { + "id": "f5a62c5a", + "key": { + "dataType": "string", + "id": "AvailabilityZone--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "AvailabilityZone", + "type": "tag" + }, + "op": "nexists", + "value": "" + }, + { + "id": "25e8abc8", + "key": { + "dataType": "string", + "id": "TargetGroup--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "TargetGroup", + "type": "tag" + }, + "op": "nexists", + "value": "" + } + ], + "op": "AND" + }, + "functions": [], + "groupBy": [ + { + "dataType": "string", + "id": "LoadBalancer--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "LoadBalancer", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + } + ], + "having": [], + "legend": "{{LoadBalancer}}", + "limit": null, + "orderBy": [], + "queryName": "A", + "reduceTo": "avg", + "spaceAggregation": "sum", + "stepInterval": 60, + "timeAggregation": "sum" + } + ], + "queryFormulas": [] + }, + "clickhouse_sql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "id": "7d92a02f-3202-4059-8b88-2d24112a35e6", + "promql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "queryType": "builder" + }, + "selectedLogFields": [ + { + "dataType": "string", + "name": "body", + "type": "" + }, + { + "dataType": "string", + "name": "timestamp", + "type": "" + } + ], + "selectedTracesFields": [ + { + "dataType": "string", + "id": "serviceName--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "serviceName", + "type": "tag" + }, + { + "dataType": "string", + "id": "name--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "name", + "type": "tag" + }, + { + "dataType": "float64", + "id": "durationNano--float64--tag--true", + "isColumn": true, + "isJSON": false, + "key": "durationNano", + "type": "tag" + }, + { + "dataType": "string", + "id": "httpMethod--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "httpMethod", + "type": "tag" + }, + { + "dataType": "string", + "id": "responseStatusCode--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "responseStatusCode", + "type": "tag" + } + ], + "softMax": 0, + "softMin": 0, + "stackedBarChart": false, + "thresholds": [], + "timePreferance": "GLOBAL_TIME", + "title": "Requests", + "yAxisUnit": "none" + }, + { + "bucketCount": 30, + "bucketWidth": 0, + "columnUnits": {}, + "description": "The number of HTTP 5XX response codes generated by the targets. This does not include any response codes generated by the load balancer.\n\nSee HTTPCode_Target_5XX_Count at https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html", + "fillSpans": false, + "id": "5a9ec75f-3bcd-4829-94e6-452caa2cc0d2", + "isStacked": false, + "mergeAllActiveQueries": false, + "nullZeroValues": "zero", + "opacity": "1", + "panelTypes": "graph", + "query": { + "builder": { + "queryData": [ + { + "aggregateAttribute": { + "dataType": "float64", + "id": "aws_ApplicationELB_HTTPCode_Target_5XX_Count_sum--float64--Gauge--true", + "isColumn": true, + "isJSON": false, + "key": "aws_ApplicationELB_HTTPCode_Target_5XX_Count_sum", + "type": "Gauge" + }, + "aggregateOperator": "sum", + "dataSource": "metrics", + "disabled": false, + "expression": "A", + "filters": { + "items": [ + { + "id": "702a8765", + "key": { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + "op": "=", + "value": "$Account" + }, + { + "id": "32985f2d", + "key": { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + }, + "op": "=", + "value": "$Region" + }, + { + "id": "e4cf3d8b", + "key": { + "dataType": "string", + "id": "TargetGroup--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "TargetGroup", + "type": "tag" + }, + "op": "nexists", + "value": "" + }, + { + "id": "234c77fd", + "key": { + "dataType": "string", + "id": "AvailabilityZone--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "AvailabilityZone", + "type": "tag" + }, + "op": "nexists", + "value": "" + } + ], + "op": "AND" + }, + "functions": [], + "groupBy": [ + { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + }, + { + "dataType": "string", + "id": "LoadBalancer--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "LoadBalancer", + "type": "tag" + } + ], + "having": [], + "legend": "{{LoadBalancer}}", + "limit": null, + "orderBy": [], + "queryName": "A", + "reduceTo": "avg", + "spaceAggregation": "sum", + "stepInterval": 60, + "timeAggregation": "sum" + } + ], + "queryFormulas": [] + }, + "clickhouse_sql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "id": "a1cc5b1c-adb6-4a71-bb6e-99337ef6a9d4", + "promql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "aws_ApplicationELB_HTTPCode_Target_5XX_Count_sum{TargetGroup=\"\"}" + } + ], + "queryType": "builder" + }, + "selectedLogFields": [ + { + "dataType": "string", + "name": "body", + "type": "" + }, + { + "dataType": "string", + "name": "timestamp", + "type": "" + } + ], + "selectedTracesFields": [ + { + "dataType": "string", + "id": "serviceName--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "serviceName", + "type": "tag" + }, + { + "dataType": "string", + "id": "name--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "name", + "type": "tag" + }, + { + "dataType": "float64", + "id": "durationNano--float64--tag--true", + "isColumn": true, + "isJSON": false, + "key": "durationNano", + "type": "tag" + }, + { + "dataType": "string", + "id": "httpMethod--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "httpMethod", + "type": "tag" + }, + { + "dataType": "string", + "id": "responseStatusCode--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "responseStatusCode", + "type": "tag" + } + ], + "softMax": 0, + "softMin": 0, + "stackedBarChart": false, + "thresholds": [], + "timePreferance": "GLOBAL_TIME", + "title": "Target 5XX", + "yAxisUnit": "none" + }, + { + "bucketCount": 30, + "bucketWidth": 0, + "columnUnits": {}, + "description": "The number of HTTP 5XX server error codes that originate from the load balancer. This count does not include any response codes generated by the targets.\n\nSee HTTPCode_ELB_5XX_Count at https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html", + "fillSpans": false, + "id": "e16fb999-491b-4cfa-b9aa-d558f2132b6b", + "isStacked": false, + "mergeAllActiveQueries": false, + "nullZeroValues": "zero", + "opacity": "1", + "panelTypes": "graph", + "query": { + "builder": { + "queryData": [ + { + "aggregateAttribute": { + "dataType": "float64", + "id": "aws_ApplicationELB_HTTPCode_ELB_5XX_Count_sum--float64--Gauge--true", + "isColumn": true, + "isJSON": false, + "key": "aws_ApplicationELB_HTTPCode_ELB_5XX_Count_sum", + "type": "Gauge" + }, + "aggregateOperator": "sum", + "dataSource": "metrics", + "disabled": false, + "expression": "A", + "filters": { + "items": [ + { + "id": "5807a1e3", + "key": { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + "op": "=", + "value": "$Account" + }, + { + "id": "0dd63d0c", + "key": { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + }, + "op": "=", + "value": "$Region" + }, + { + "id": "31ccfbae", + "key": { + "dataType": "string", + "id": "AvailabilityZone--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "AvailabilityZone", + "type": "tag" + }, + "op": "nexists", + "value": "" + } + ], + "op": "AND" + }, + "functions": [], + "groupBy": [ + { + "dataType": "string", + "id": "LoadBalancer--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "LoadBalancer", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + } + ], + "having": [], + "legend": "{{LoadBalancer}}", + "limit": null, + "orderBy": [], + "queryName": "A", + "reduceTo": "avg", + "spaceAggregation": "sum", + "stepInterval": 60, + "timeAggregation": "sum" + } + ], + "queryFormulas": [] + }, + "clickhouse_sql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "id": "91d000c1-7697-4219-acb6-a43a5d455834", + "promql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "queryType": "builder" + }, + "selectedLogFields": [ + { + "dataType": "string", + "name": "body", + "type": "" + }, + { + "dataType": "string", + "name": "timestamp", + "type": "" + } + ], + "selectedTracesFields": [ + { + "dataType": "string", + "id": "serviceName--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "serviceName", + "type": "tag" + }, + { + "dataType": "string", + "id": "name--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "name", + "type": "tag" + }, + { + "dataType": "float64", + "id": "durationNano--float64--tag--true", + "isColumn": true, + "isJSON": false, + "key": "durationNano", + "type": "tag" + }, + { + "dataType": "string", + "id": "httpMethod--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "httpMethod", + "type": "tag" + }, + { + "dataType": "string", + "id": "responseStatusCode--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "responseStatusCode", + "type": "tag" + } + ], + "softMax": 0, + "softMin": 0, + "stackedBarChart": false, + "thresholds": [], + "timePreferance": "GLOBAL_TIME", + "title": "Loadbalancer 5XX", + "yAxisUnit": "none" + }, + { + "bucketCount": 30, + "bucketWidth": 0, + "columnUnits": {}, + "description": "The total number of concurrent TCP connections active from clients to the load balancer and from the load balancer to targets.\n\nSee ActiveConnectionCount at https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html", + "fillSpans": false, + "id": "2be35406-693a-435b-a844-2df239be0b60", + "isStacked": false, + "mergeAllActiveQueries": false, + "nullZeroValues": "zero", + "opacity": "1", + "panelTypes": "graph", + "query": { + "builder": { + "queryData": [ + { + "aggregateAttribute": { + "dataType": "float64", + "id": "aws_ApplicationELB_ActiveConnectionCount_sum--float64--Gauge--true", + "isColumn": true, + "isJSON": false, + "key": "aws_ApplicationELB_ActiveConnectionCount_sum", + "type": "Gauge" + }, + "aggregateOperator": "sum", + "dataSource": "metrics", + "disabled": false, + "expression": "A", + "filters": { + "items": [ + { + "id": "72c256c0", + "key": { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + "op": "=", + "value": "$Account" + }, + { + "id": "b433c2a1", + "key": { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + }, + "op": "=", + "value": "$Region" + }, + { + "id": "8f5e7de0", + "key": { + "dataType": "string", + "id": "AvailabilityZone--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "AvailabilityZone", + "type": "tag" + }, + "op": "nexists", + "value": "" + } + ], + "op": "AND" + }, + "functions": [], + "groupBy": [ + { + "dataType": "string", + "id": "LoadBalancer--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "LoadBalancer", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + } + ], + "having": [], + "legend": "{{LoadBalancer}}", + "limit": null, + "orderBy": [], + "queryName": "A", + "reduceTo": "avg", + "spaceAggregation": "sum", + "stepInterval": 60, + "timeAggregation": "sum" + } + ], + "queryFormulas": [] + }, + "clickhouse_sql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "id": "74429f26-2fe0-46f2-8b11-23c4f00a260a", + "promql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "queryType": "builder" + }, + "selectedLogFields": [ + { + "dataType": "string", + "name": "body", + "type": "" + }, + { + "dataType": "string", + "name": "timestamp", + "type": "" + } + ], + "selectedTracesFields": [ + { + "dataType": "string", + "id": "serviceName--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "serviceName", + "type": "tag" + }, + { + "dataType": "string", + "id": "name--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "name", + "type": "tag" + }, + { + "dataType": "float64", + "id": "durationNano--float64--tag--true", + "isColumn": true, + "isJSON": false, + "key": "durationNano", + "type": "tag" + }, + { + "dataType": "string", + "id": "httpMethod--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "httpMethod", + "type": "tag" + }, + { + "dataType": "string", + "id": "responseStatusCode--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "responseStatusCode", + "type": "tag" + } + ], + "softMax": 0, + "softMin": 0, + "stackedBarChart": false, + "thresholds": [], + "timePreferance": "GLOBAL_TIME", + "title": "Active Connections", + "yAxisUnit": "none" + }, + { + "bucketCount": 30, + "bucketWidth": 0, + "columnUnits": {}, + "description": "The number of connections that were not successfully established between the load balancer and target. This metric does not apply if the target is a Lambda function. This metric is not incremented for unsuccessful health check connections.\n\nSee TargetConnectionErrorCount at https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html", + "fillSpans": false, + "id": "480ecee2-1271-4dfd-a7bb-9f9845957c6e", + "isStacked": false, + "mergeAllActiveQueries": false, + "nullZeroValues": "zero", + "opacity": "1", + "panelTypes": "graph", + "query": { + "builder": { + "queryData": [ + { + "aggregateAttribute": { + "dataType": "float64", + "id": "aws_ApplicationELB_TargetConnectionErrorCount_sum--float64--Gauge--true", + "isColumn": true, + "isJSON": false, + "key": "aws_ApplicationELB_TargetConnectionErrorCount_sum", + "type": "Gauge" + }, + "aggregateOperator": "sum", + "dataSource": "metrics", + "disabled": false, + "expression": "A", + "filters": { + "items": [ + { + "id": "9226a37c", + "key": { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + "op": "=", + "value": "$Account" + }, + { + "id": "c3ff0c8f", + "key": { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + }, + "op": "=", + "value": "$Region" + }, + { + "id": "e3317bc2", + "key": { + "dataType": "", + "isColumn": false, + "key": "TargetGroup", + "type": "" + }, + "op": "nexists", + "value": "" + }, + { + "id": "4e5c2324", + "key": { + "dataType": "", + "isColumn": false, + "key": "AvailabilityZone", + "type": "" + }, + "op": "nexists", + "value": "" + } + ], + "op": "AND" + }, + "functions": [], + "groupBy": [ + { + "dataType": "string", + "id": "LoadBalancer--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "LoadBalancer", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + } + ], + "having": [], + "legend": "{{LoadBalancer}}", + "limit": null, + "orderBy": [], + "queryName": "A", + "reduceTo": "avg", + "spaceAggregation": "sum", + "stepInterval": 60, + "timeAggregation": "sum" + } + ], + "queryFormulas": [] + }, + "clickhouse_sql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "id": "148daebb-8ae4-4a9f-b569-5e0e75f6b52d", + "promql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "queryType": "builder" + }, + "selectedLogFields": [ + { + "dataType": "string", + "name": "body", + "type": "" + }, + { + "dataType": "string", + "name": "timestamp", + "type": "" + } + ], + "selectedTracesFields": [ + { + "dataType": "string", + "id": "serviceName--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "serviceName", + "type": "tag" + }, + { + "dataType": "string", + "id": "name--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "name", + "type": "tag" + }, + { + "dataType": "float64", + "id": "durationNano--float64--tag--true", + "isColumn": true, + "isJSON": false, + "key": "durationNano", + "type": "tag" + }, + { + "dataType": "string", + "id": "httpMethod--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "httpMethod", + "type": "tag" + }, + { + "dataType": "string", + "id": "responseStatusCode--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "responseStatusCode", + "type": "tag" + } + ], + "softMax": 0, + "softMin": 0, + "stackedBarChart": false, + "thresholds": [], + "timePreferance": "GLOBAL_TIME", + "title": "Target Connection Errors", + "yAxisUnit": "none" + }, + { + "bucketCount": 30, + "bucketWidth": 0, + "columnUnits": {}, + "description": "The number of load balancer capacity units (LCU) used by your load balancer. You pay for the number of LCUs that you use per hour. When LCU reservation is active, ConsumedLCUs will report 0 if usage is below the reserved capacity, and will report values above 0 if usage exceeds the reserved LCUs\n\nSee ConsumedLCUs at https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html", + "fillSpans": false, + "id": "2243e542-0bbc-4e2a-a4dd-2e121abc9b95", + "isStacked": false, + "mergeAllActiveQueries": false, + "nullZeroValues": "zero", + "opacity": "1", + "panelTypes": "graph", + "query": { + "builder": { + "queryData": [ + { + "aggregateAttribute": { + "dataType": "float64", + "id": "aws_ApplicationELB_ConsumedLCUs_sum--float64--Gauge--true", + "isColumn": true, + "isJSON": false, + "key": "aws_ApplicationELB_ConsumedLCUs_sum", + "type": "Gauge" + }, + "aggregateOperator": "sum", + "dataSource": "metrics", + "disabled": false, + "expression": "A", + "filters": { + "items": [ + { + "id": "20627274", + "key": { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + "op": "=", + "value": "$Account" + }, + { + "id": "cd861e27", + "key": { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + }, + "op": "=", + "value": "$Region" + } + ], + "op": "AND" + }, + "functions": [], + "groupBy": [ + { + "dataType": "string", + "id": "LoadBalancer--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "LoadBalancer", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + } + ], + "having": [], + "legend": "{{LoadBalancer}}", + "limit": null, + "orderBy": [], + "queryName": "A", + "reduceTo": "avg", + "spaceAggregation": "sum", + "stepInterval": 60, + "timeAggregation": "sum" + } + ], + "queryFormulas": [] + }, + "clickhouse_sql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "id": "38594221-7a5b-4d94-8775-26297f6cb882", + "promql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "queryType": "builder" + }, + "selectedLogFields": [ + { + "dataType": "string", + "name": "body", + "type": "" + }, + { + "dataType": "string", + "name": "timestamp", + "type": "" + } + ], + "selectedTracesFields": [ + { + "dataType": "string", + "id": "serviceName--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "serviceName", + "type": "tag" + }, + { + "dataType": "string", + "id": "name--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "name", + "type": "tag" + }, + { + "dataType": "float64", + "id": "durationNano--float64--tag--true", + "isColumn": true, + "isJSON": false, + "key": "durationNano", + "type": "tag" + }, + { + "dataType": "string", + "id": "httpMethod--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "httpMethod", + "type": "tag" + }, + { + "dataType": "string", + "id": "responseStatusCode--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "responseStatusCode", + "type": "tag" + } + ], + "softMax": 0, + "softMin": 0, + "stackedBarChart": false, + "thresholds": [], + "timePreferance": "GLOBAL_TIME", + "title": "Consumed LCUs", + "yAxisUnit": "none" + }, + { + "bucketCount": 30, + "bucketWidth": 0, + "columnUnits": {}, + "description": "The total number of bytes processed by the load balancer over IPv4 and IPv6 (HTTP header and HTTP payload). This count includes traffic to and from clients and Lambda functions, and traffic from an Identity Provider (IdP) if user authentication is enabled.\n\nSee ProcessedBytes at https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html", + "fillSpans": false, + "id": "3bb56361-9a67-47ce-b186-ccee02e15f51", + "isStacked": false, + "mergeAllActiveQueries": false, + "nullZeroValues": "zero", + "opacity": "1", + "panelTypes": "graph", + "query": { + "builder": { + "queryData": [ + { + "aggregateAttribute": { + "dataType": "float64", + "id": "aws_ApplicationELB_ProcessedBytes_sum--float64--Gauge--true", + "isColumn": true, + "isJSON": false, + "key": "aws_ApplicationELB_ProcessedBytes_sum", + "type": "Gauge" + }, + "aggregateOperator": "sum", + "dataSource": "metrics", + "disabled": false, + "expression": "A", + "filters": { + "items": [ + { + "id": "7d4a3494", + "key": { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + "op": "=", + "value": "$Account" + }, + { + "id": "3c307858", + "key": { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + }, + "op": "=", + "value": "$Region" + }, + { + "id": "fbca8724", + "key": { + "dataType": "string", + "id": "AvailabilityZone--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "AvailabilityZone", + "type": "tag" + }, + "op": "nexists", + "value": "" + } + ], + "op": "AND" + }, + "functions": [], + "groupBy": [ + { + "dataType": "string", + "id": "LoadBalancer--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "LoadBalancer", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + } + ], + "having": [], + "legend": "{{LoadBalancer}}", + "limit": null, + "orderBy": [], + "queryName": "A", + "reduceTo": "avg", + "spaceAggregation": "sum", + "stepInterval": 60, + "timeAggregation": "sum" + } + ], + "queryFormulas": [] + }, + "clickhouse_sql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "id": "e71d1223-7441-4a5d-b288-928a2903737d", + "promql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "queryType": "builder" + }, + "selectedLogFields": [ + { + "dataType": "string", + "name": "body", + "type": "" + }, + { + "dataType": "string", + "name": "timestamp", + "type": "" + } + ], + "selectedTracesFields": [ + { + "dataType": "string", + "id": "serviceName--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "serviceName", + "type": "tag" + }, + { + "dataType": "string", + "id": "name--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "name", + "type": "tag" + }, + { + "dataType": "float64", + "id": "durationNano--float64--tag--true", + "isColumn": true, + "isJSON": false, + "key": "durationNano", + "type": "tag" + }, + { + "dataType": "string", + "id": "httpMethod--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "httpMethod", + "type": "tag" + }, + { + "dataType": "string", + "id": "responseStatusCode--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "responseStatusCode", + "type": "tag" + } + ], + "softMax": 0, + "softMin": 0, + "stackedBarChart": false, + "thresholds": [], + "timePreferance": "GLOBAL_TIME", + "title": "Processed Bytes", + "yAxisUnit": "bytes" + }, + { + "bucketCount": 30, + "bucketWidth": 0, + "columnUnits": {}, + "description": "The maximum number of load balancer capacity units (LCU) used by your load balancer at a given point in time. Only applicable when using LCU Reservation.\n\nSee PeakLCUs at https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html", + "fillSpans": false, + "id": "36cbc321-6c02-4d13-895e-955d71d376b4", + "isStacked": false, + "mergeAllActiveQueries": false, + "nullZeroValues": "zero", + "opacity": "1", + "panelTypes": "graph", + "query": { + "builder": { + "queryData": [ + { + "aggregateAttribute": { + "dataType": "float64", + "id": "aws_ApplicationELB_PeakLCUs_sum--float64--Gauge--true", + "isColumn": true, + "isJSON": false, + "key": "aws_ApplicationELB_PeakLCUs_sum", + "type": "Gauge" + }, + "aggregateOperator": "max", + "dataSource": "metrics", + "disabled": false, + "expression": "A", + "filters": { + "items": [ + { + "id": "a416e862", + "key": { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + "op": "=", + "value": "$Account" + }, + { + "id": "ed7d0a39", + "key": { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + }, + "op": "=", + "value": "$Region" + } + ], + "op": "AND" + }, + "functions": [], + "groupBy": [ + { + "dataType": "string", + "id": "LoadBalancer--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "LoadBalancer", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_account_id--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_account_id", + "type": "tag" + }, + { + "dataType": "string", + "id": "cloud_region--string--tag--false", + "isColumn": false, + "isJSON": false, + "key": "cloud_region", + "type": "tag" + } + ], + "having": [], + "legend": "{{LoadBalancer}}", + "limit": null, + "orderBy": [], + "queryName": "A", + "reduceTo": "avg", + "spaceAggregation": "max", + "stepInterval": 60, + "timeAggregation": "max" + } + ], + "queryFormulas": [] + }, + "clickhouse_sql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "id": "c4728417-0c3c-4477-b8bd-0a2de16c342a", + "promql": [ + { + "disabled": false, + "legend": "", + "name": "A", + "query": "" + } + ], + "queryType": "builder" + }, + "selectedLogFields": [ + { + "dataType": "string", + "name": "body", + "type": "" + }, + { + "dataType": "string", + "name": "timestamp", + "type": "" + } + ], + "selectedTracesFields": [ + { + "dataType": "string", + "id": "serviceName--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "serviceName", + "type": "tag" + }, + { + "dataType": "string", + "id": "name--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "name", + "type": "tag" + }, + { + "dataType": "float64", + "id": "durationNano--float64--tag--true", + "isColumn": true, + "isJSON": false, + "key": "durationNano", + "type": "tag" + }, + { + "dataType": "string", + "id": "httpMethod--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "httpMethod", + "type": "tag" + }, + { + "dataType": "string", + "id": "responseStatusCode--string--tag--true", + "isColumn": true, + "isJSON": false, + "key": "responseStatusCode", + "type": "tag" + } + ], + "softMax": 0, + "softMin": 0, + "stackedBarChart": false, + "thresholds": [], + "timePreferance": "GLOBAL_TIME", + "title": "Peak LCUs", + "yAxisUnit": "none" + } + ] +} diff --git a/pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/assets/dashboards/overview.png b/pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/assets/dashboards/overview.png new file mode 100644 index 0000000000000000000000000000000000000000..8005a6219ae86dc6bca5c3de185de0c946a3b806 GIT binary patch literal 128236 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�MQW#f&4ulHUX-lMq%MFOlXkHlRQ7 zZiI>m;v4)O2e6WuKEayl{>#ce`%e;v>>heoF6X&2;Ch6CyWpc4=Y z_|<(IBXYh6ESjQxM2*@Q-qM&A5|wxKp> zyo>HlD-65J$@v8`z#Hl4&6*AmJ)bTWQb=Rr<;v}qo=XMx0?m?r+W9!9R+GgU$$h#mi{N+^)nVHj)(e^W!_NV3hi1} z_OiF;MBNG>Tbywo6TKkLV|CqlJfRAfU*&9U7hZF6cbhJvCDQvyX3WsMD_(k#OD&Vk zJAdScrl%?JCy1ak5$!fVo1K>Lzwr)p z->bANx9nH_00qOefG>!nJ2*Eg%3VN7^uaS23VJB(0lw;!iC%m@atxsiQh2T5t=~}B zmW;_1%Z?eIjo%w>)00*By4I~NHMg49-jxV~+_I+F9b!on2v-o4&BnJE@$QHE*pvOO zgM(nW;csbu=V=eCbg=&|8BM55y6HG--&T+ftBnU9m;O4;gZx#Vg&h61t0J7>EWRXr ztMSyj)4Hr>;D@9}M{;{+3M)(SLvev@WbwoXOZSq7Z}Y&5BXVe)E0@1Au2x@#ZDSl2 zQbHOw@9Y!b$Yt1pP#J7{CR)Bcvl$P~k1%&(7__!x0<>Y>l4#t&g6I=Fjz6$ZQ2jyo zJhSH>CUTeseC8xEGnb^oXYNPSDJdtmt7ls=mi!$y7mG=FX4$Yyxk`qGj3T{vod}_F ze8!pVZcTF>&vua-qW1w)Q$p_RTR$c|IJiw)u{Mfd=H%C!E))Vgv*%h`S{4jkPEu0) zDPqJHgHG2dZG@L8)XXkHfAe-H)}CY$@gMoH_tifNgdafvV0DsL@eB%^KG_s;o|LE2 za$TKPZ$Dt+=oUG!b@z3p`O}SfCi`Gr&dP+dcJ~E?%l1ka$$+ z$CW^Mh)6*ZX~~dRyxaUqCB8>Pd|@+JbCVH2P$#-a8D(7mzQDirGosvu{I-_e^1ZR( zLp#0;2tvXkvs{}dUzJ|iT957Ls7hcRp1zZ32p$p=N=l;IjWa{nEA@JxS#zF00)kuM z4fV*M>RO!*lnYm;cD@B1yjE!qpjXsjdan@X1DyrzP)LMs++$Se07n-%AoTfmv**hV z2avg7=-|uu__IeXG7+(_B|7)K2}-yrH5!c7p8I-Ls6gEUlCDP!nx@$%F_HwGrxZI- zFhb%>OzU-L66ZIP+eoZ=oRD0P(5?dKtp}@YYyB}J$!2mm%n(jBoFKM7`ZplYhnlvF z^Zl2OOmTUUKY|z>HCt3;O53t?wRE5RAc9r*Hyqxfbvd-TjHTIh@E;o+)AYRl^Pq{a zj$xygZsjp%MU7M7p8~JwODgoA@w?(MX_%o>XSg)}XYJzqCv%&OD6DF-tduzV=WTy z6E1EEFdc02Eoi`Sa8b>Z+d|j2Hbxb#tU4l=H}p5mBsG{|LW8Sg+!!S$uS=rdqD{R! z-yt}3J!2P2PJ9l7nvGwderN;vb4$qb$T?fnd>CVrIJ=M4I?17)~c^H%BPBn^Y!-+K zezM?FKm1MLxpCxLdMQ;?*0zU;v_j zu;~Jh{gVxw@f#%0O9`GZ?8C@X0;GWLPK$Wnd0ta)c5dSPwA{l{fc0LdWrbLwatZM9 zA!TJ{Rqh1K&S6+_To8UOrgheA278OdQ)>N zp5cTjiQdzuqe`CyV15>gmLdnc(_gf8gva<}V!9NK-L|(iwAnL+eIWotc?qEgzdC@Z zqZopE7Jquj+OT1RdbfG1mKVze(POlV%bRiAH*Tb;L%1A%7sU(xnd^oi^?mAW^(KuB zs>&@{w)tZ@zyXd*G?W~>7oRXUjq~4&y|leH_USp~sQEBTC@#J~e`FbOVsa`6H=GY* zZ4ZwuPfFH6sc?L8x{9lqzVH-!9#FdNv7XyL`@1Wf`owcRp1gxJ?xV7fs#tZ6`Ud5I z#^pM>ls?)vt9SjlQ{2CDgaoiQ7#Ynmy*RTYbTGsV)O7=vYkGU^4Erx>_Tc4?O1FNI zVySIlyRQh>d1ML@V|$0A668}R7biK8O{QHf7R}i4`#{^j-DG1r-->~catk$EsSTmy zJ|a6it4_Pqv_u}OG!EEx*T%w00aguwXVcv#DAShgb{82cT6G@x3yX?-#(Q~<){(3? z9D@Lr)sevh;K;)R35}%GexD*Zc*msdxHu#%*5{P$KN{P%CzJ9;K{p-`vW!o>Z!NL3 z_Lc*wWH`4k&{v>r0WioX+d#D%-j=>lJ~S&p)!H!PQotkwfZ5Fr)5D!1v8z5yR!Err zr@*w6BgVb_{inOEK%>sh=*9ptjXm;h2!+D1Bl3z za&l0UdIT(l?{QxqU#%oW-Nff?opic9M_|OJGLu=0FbC#CZwQOx8YK~VgTQ|kwV)5#8W|E&F z(QS=>MU}@3(Y}6E=RK{6EK_PRX}@!oFuR>M3EFFNpSbsFPn}V*EU2DcP7Kw(%pyMG z6<+0G-`)nLqW1AK;$8;<$0yJy!e}D`B+^$C!E&{{V#9>nx_r;dYw`^AqmdUE&Z^}ahK`Q-DZSop>&Zn$p;1w|;I5@-V$w8k zzI!H9BlOyt%M-Q6eQ-6lYQ(Z_fGYKaerGIqK-ZzC%i#Z&)_puO5{Eo=C*{y@&z=+X z+$~lHUmS@4oWlZq^XgxQsv2e9lv!t;VmJ9|D(JLtzDo_?(6LTvKRkSi=1t4Q#6%XW zv9pd*00B448g<>3tC&MoTPp7=fF5Wv3^M<7cy#;DNMvWob8T1^HYp(o@Wbo zj;SvW^5kL{LIoEwjwcMmrmF2909pk>>K<#d_}39i_RMG3nF~-1vie2M#5^7A19zWE`poO<)NAcyHrS2Fs|rQdav{CtX5P0 za)bh<_T5crv4O&cg76sHB|}V3XgF5Xua6GSStR#1L{ejAS(^x*oeFrBg+)esKU0DU zWm2@`I{)77ZL<#)7`T2&?mXLpr*D%a#%5>1=;+&r^iunx;7zB^n(cb@`yBgyk_aOq zm(voWor6GPNU+8IgT3Ru9aB?}^M*PC!h>rC)$_=s_AGz@PR^M^apwWi`|xGl3k2ca zuya~vTLT}Hpt|LMQ0e_c{ErS_hi$I1X?m80sQ!4V=1sjHFy?u(zV&F>1~v@xMQ8!s z^?e^AR83b7Yy`}9&(Fn3&@75+WWFfPurtW`4Cds&(;v`a(xN^MW@GWEtsKpmPujkr zQ?3ZILbr}Y;gi3PD2&PRf!3Ikj|%!el@et0t+gxGgL7+l-h(_zfRYe7vVa`m+ipZyefngw5>$hkQ!_Pcn;=a(uJgBcg+zj1)CI$V@^8E&6 zzgv1lJ1qjLPd0+u=AU9CzkjbN!pHY)cDC1{DwCAdt?tR$#ZS?kr4QtfV77;rZkiY$ zg#kD<2*Xb2=Lmg-<0(x|16K8x-3YbPQ^EjfOgb(GmFt!(t-`H1;vUnTPZe;3Zjk)Z z;JL2YSo&1h3a}M{x|V`ASG`{Toe$w0Uf4@=>r0Kq#9FF!TCx*No7%Q4C`2Y7T@F_q zrZR87oIErcfAH;|jTuYWeQdl*^)*(O*&)B^Au$COv*^O*!d~rX>y}+>#l21kacp4W zH*TQa8M(}*lU0?hV?!Ma^^52Xv)+u}Z^e~*v6vy0>IW)UMzJYheROl9zOD3iPoV4g zIndML|4!e*$W3(HNMHMb{y9k*?Z)Xl7KIkrGO7p6MTZ`Zy2}S< z;!b9K6&08o-ArmT43o<0+M5gd@B#jpqjrXH`L7sW#;&YVtY;niLP#CWcv69gV1_M^ zMsN)}LG_fHlIYdLKCFVWVy_YUd%{NA1O1Og{BIoi`igp}G*vj#Z@lxuyY0@$YP<9R z)!F{mXo=BmhwH688l~3k@d{lw=g+mZsMHg(MdqYMZQ)71%R~9|Tp)h4U0BxHvabpW z3j>V-2r^>0UE*NkKswv-r*374iX3mm8A(IrmAMvgeA-kvk!@qEhRB_1u#e&rZDt;uzd<6qhx z$sF9bs-#`X7>mip_PUY-WrGIA0^*nC$v+L2M_t>5TwVINtJ?cd-c%`z|SZR6Z; z;BdC-h_SJOH&VYCJx4rKsapv)3o|D;11Qr#-pP z@E(!6H>fWRY9!7 z&-jHgH=5;m9LXBm;L`3}vy((vv2WS!j-#8SOg*8!1KjlM4?Ses=2+`cZDcvljZtej z25dxG2K@%c=LxkY^SI8YZv>1h@$&u%HQ7w%&FOC+{is$=&Zr}y+j;G$-Fy|XaR<-c zN)bLz#D=R*RuwBRe^z>p&fglPz|O8G#u~At)|t;|@eXNpoJ21Y@0U-t3J7|}>-g_| z4G(TuN#{5)R{s3rL3B?Q>SiXDx`olht=d#Ix{{DWA@VSiN5V6EZ&}Cj9&h@7;wg9- z-S1UZ&motx@S3Uo-!{x>U6oF2CGzA!?Vc^ zEM?okl1Z+1P~Ph-W1#)PH`+1pRMa!UCa5;Wuad5dZS&E~cVH+cYBwwhk4U2``ZlPq zO_JJN&srCWO`7~&>cr`xGADyqkhI;*#E;;syd>GVmztNESuP1Ly1Eh)RnNZra^r_@ zt24~;eG0FtZ@&l@D|gzRwTi$f*R2+r37iQsP31KXhEXiL7oddcQhxsR&ozmkTAvLL5oSIy$m3eY+?40F9yl z?K4F1KvGG;cUCqgi0FCu!RvTtroo5E0Z&Q_2OIn6x^-}<*5k+zjV!E}-Sb7@17s6` z{{$O3(NQn*Y*AK8NW3rrn!bdbj|e|1J;N3d04SA27bW| z*lq{$mT2BDg0I%abCg~q&1xl7W}&4+>P5$`!|-jf&BL**`q`%4vCuj4)Y;1MW4OYt z=D9cPs5Vvv`b1H^+0kWdh(&9xOrVS7`t8~g)lnxJ%3-e+GcBSx*R4r2*E!#?R1_s% zneshCiD=`59@jF$*FLihiDJh>H#Jwx+DY_=N=C+R&W%3hJ5}|GVM0H=8nW+i^)54l z#0735fr%ImjloNsg}SQ|(iuPU)4wF~2heqMKPE>0BdL+qw3L%;BpPeKUnEa}o8@o0 zGE(JIzfPL<`E`oc+p^FR^Lyvjw--q<92FxTkVf%ct5%@{VYq*~=+%06o)T6#+-Vc0s&wdS%L#aigBw{fMV7@w9`-%CzWyZY+T9L0hvqa1$kdgIN$MWgof6>@^#_r>!?nu!ns$zQ0L&nBk!(C@)|ewMbSGM<66zW*}b!<^4RO(9ruEo=Hp3nKk|9(f=ZPgV@{GDU6C_x9EU~KZWHRwA(9tzp!Gt?lHwi z9h_sbOG)W%E=`S96$_Tzi>Hc*}l?fquM+m)&#fetLJ zw8NSFuPan);icJ{LRwN%gm__?54=e9Hi>F6+BH!d_QzWVQ6aH)F-zrH3vz89-msnD zoATvsvZZ%_$;$WkHMPyqz2|LhjTl}XLxM}gx68Ac!vsXRq($?*=e00*%#lkRcdV1O zPQHh?r0OVWJdZZ;VI9Sqv(Zu7-EqoCyc}L)4aEarn;1-m{4|=9cPiQ~L*DAqOwmmn z+0zMD^RV(~JF-OlH1~s}W=Wpn%6O5!|9};#o7zr{CR57FDnuI<5!h5BS8#kXpfyWO zVx*09CgFTApcQAZtYOP&LAJnfK5>~_c$c@94g#@KS|kRBv z(w@_8pU7cB#t^2ZsBx`5%eeIW-oM?Iqq^rhl~Lv5Mr{*eOaJ!mYZTZfnVHQ=KSSJm zu|j{YYEXuZxJ0-q^(LiLIM>9RvU03*r(XYr(1YHaK{dY>7@b*GT07Cgb_qj0EVh-$UKYGP66A>Vrf#P2CP~mfjb^3hNid=1kTg;ure~@7Zj$(php5 zH*wd#ex&oJinyX60|#!(kh-Q7067NC({%1_amzOQQNH#EhUw~u1Q_rtIRO&MBd8h)IKR>1(#wlB82M#rJ&sYrI4zqfqj1Vl2X?l;hBtv0cwl|){>ue7m6 zwoxA8^UVNG^OkIovkP*S@tLNgQsjJC1%~$fWO4hfjOVJ0;K=l7&NS7@i)D1ooZcQ& z)OQ#k7bmF~{f7>#M7_fkk?8xs;qcHCT!DITMpTd$WWy- zd^4*Ss=Oa>LZ{^sI&hM}XC zPwdLm<(2ZdWBJQyGpmyDUZNkp7*ENB#b-kwX0-`-yqTGOl6FIRP(HON9M)}B;eWqw zn{0O~U?%0o$|}t9gMqEcv9i&+`No(fSy53@@FnkcXO}6Y0A?2O2xvi9xu9>+41!=E zD5O+jx3dn0g!$#{@lv67d#4(eljzM$L+Pt!p}~YN2SV~JoNi`MVMB>oM$1}oI`;Eu zf}pzR#&I$wA^?ZQ^HL^s&-#hHWQ}S2X7KBcXH+j1DUHn;+mLX32-e&bioaH6-HTqb zswg}|P)58aN!Y3=pq|)lSz8=X50riq_gPsbWHwfrU1@f6eAQj~4yh<@R7_8Buize^Vd_H0I4=LziLGc6!6ugmV70LS|=~Y5tLdFTNqs z%%*Zhb5ExlU(-Ut>c~uGteSiHdxQg5@5@)Rnn#0A`egZB?y?D{o6K zCc)w_3;mF~HhqJ0qWKoF{EN&XBW;d^Jh|g4%>;%2!^+E{R){=9k3Vj&bG$rtxtkiJ zZ}e8GscQ(P#t9wP=&FzVBs1lUzF4genl*X6+&aAu1}7qiW$mfrMw6W$_ieU1D>h+p zBCMxKQ-~z)m$Lc-io;d=*sy!9PuP``AdWnW-}~Owe`?inpe#I{M^cw$2B%!EfF!>4 z*K+I;BhEfYX?6^xv6m^Y2i?4XX4tUuWSgC>>>ktqriGO+&Y_-_G-$=%YO+l-(w(T{ zHr7FMjnky?vmp`MG!2pFpDIrngw(jwMm2}Me}lM1VMA;j`WzOb)T9LZ0Q7NZXXhb0 z8ZiO!8>^x2@s9DYf+f0$!9R)&b)cX}*-JWOdcT1BV!J~)rgV)gEP@-$N%N%YQsP;; zebSwqkZ{V)?+FWwu#9IhO#bRS*5w*>DbFVC!S#KX_MBNlMXe!-^YWl21{G6(ofKp^ zCz!vz(alyN$olj-YzIdD6(F>p^eb>Hpl0^y>gwyyc+Jgb} z)Mb1xp)6*iLUXxO;G#vsSltAk&T&~<;~|xm9I)#JO-VwwyQzX_S{|X8MAW`Qj%LD( zW_k%N9vytSA){wkVyel-R4fPle|(o3IpIGlsSD3rz}A(QZVny|3l_>);~u^YB%3rE zFpMj;c^)uc;P&M#h7Gkm+Zjb^L&DiS*GE@Ttt*)#N@gT?UTfFHlK|2DZSpC0G6zcp zFg1Nt&QPO$P)ABe!te}D#?-bB8sixA8&Ij`TR5?e;tI=^6n=!pcvL2Q2H)Sjb$ZdZ zB!GFbxp0yfV#la-XnyrGBESbSbdcEQx4M28L~*6i{Mw~*`hYe6yD;-BKMPGl7uLLO z$tLlpPC1&oi?bvKoL@=huddwqi_10+NAr1HNUn4A>Xo^4)}>>%%`mvL0++2 zkt~AZ@gRP!X1Z$vx&d3uU9@x`(L&2(+x@~9v!_Yk!ztgTpzZSPa>xyj$eqU-R#d1T zj0%6~_oA@lC!yn?wgM!=>&64WsHLQyQ&5sTxQ)2(px9*6xx)wyo?1FPwZFN13{DYy zh~mk8U=~hQ0JcreVI4L`d=igP2<&|(FAgwZ#7I6XEK4EU&i2q4TyW_$aj=(&rb^)U z=ANV`uZBi(z8r;$ur3#8R6jq+?2Mi$RSg&Cm!C#C3G?B8(Y(IukYWoXn1sxS31jQc z2~j5{g0iwQU|V|4&sdi&qh7KYC8nl&ais)fsf=}Pzfh@BQp83!Q=_f#+{fq(^|RS+ z*J`F$NcRBC9e_CD7@eb~CV4+c4JTW&MFvO3e zy*%)DRViU*c<<`{b9EBsCAK%|u!9cMs{Y-h0~AiHADGY(P^Y7t&mXgWm|MJ3Kos#M zn&F}SeI$*-{abd`4T8Z{Up-kqKr9Yed5R9D`*FL65YqKLy_+hq1yqcR3v?tg_+0&E z0`|98F&8WE+JzRjZW|MImF%e%_{USi=d*uYMN*dWR6Ohpe-{_etDOCbdGR*4%OZVF zob@O@UFR=*;7r-Dl7TFaX zWrr`)jAXOy_E_z)eF7f(j2{IYmzT3w?{}miew206EKZlPHEe+@BqRiyTyL15Cl28F z1p`b_^nPpVsRQ#zTh*rPF(*N1&7?D_BzzrZF}99gM4qbZi1cB_rgApq?B7VlU*lP26FkDca+A* zj~t1dFwS{`q@|#h%2n?ep;&-x-hch~T`z@?xtv^J)3{XwBg>F%1xb8=KauZJpF85fN9BPGl&mHvbPesQ>`fQDv0eTW$4yI$r4TIe6 zhKjJQx#Ib;vdW0`UyASbLI=CbkG4OFp%kG`2eeQ6C%V(OQf7Z&K732YeYo06)fX!F z>@cM5x53r>`}3I9&X@FriVFUa35JtkswCG{)$(HCaWJOPdCKZaUM+l=)o@JJ0^B=q z&{#N6j;u@G8PI4TyO&nGGota2u|wzbbYI!=`vM~5o5>06#}#!_U#a1~as&LBOE(U! z*r~3%d^{~4Ynr^+GP&)}Q@QuM4aSsf)NF0_RloP^506y3hh|9c%-o~d0gvp&{^g_J zvjIJ0W9`TOyJrWXGPLsxGXw`aU{H;i7J~a?ju#|dnmd(H&4A|x3dj2NJ+;!x%&^m` z014Xn_s#q+vKd(*6ZwU$N5G3{$1Q4CBkQW%Gc5TY#y^%B#<8xr^ki3_xYn7bZ_n z@4R6zb26Gayr!tag@Xcslu+jI+&u1#14^c zXR3cVYV(qcw%yGe62`XrzqmKt&3Vpk?viFsU&DJw78Zbi;Ld|^&t722PUC3tQ#fz*iYsu zLmWb6+S$Xtsk{CvF~t9hG*_ehb600e$9d0s#hriUsMvmjF@Ni|q1y18Jwz-|iFfwU z+;OGOKRe@CSy_cKi$Z+vPphrXwUB1=_Aj#f`Uevnly1Fpq!gpYu3z1Un<{|!oe$(E zRI^(*_a|f%GEpH?C}Bp-HyoGbbWcoh*|{%$Il-Vz%U-DW4rV<)B@2lE5ah=5#KY6c z(povuVTR1 zTGUpJFR~7 zg*lm?2`JVw&^LZ6elo$aIV&=GJ5B<_NE#(9lTBfvN$6T^o#4g(_*MJ~?C5Z;T*w(7 zcUNPwpuI3G#M+t~p@;Xub%{+=wYjkMb~5vp>-<~HyHtFR58Vr?4a8hL>h~s31y#wf z)#cII^H)~(WBk&l%grQ@e&)ah2wO1+gqyO#Di@OMtrZ-W8rA{vMbn_nHO2geZDx;+ z+Z;B({d5>>Bgu|D?7Gi2tmE?RN7=>Ve1H5o zig<)8fwJ=;SNl(0c`iw=UpyI?WM&h=Q$Konhcfx3W#+f%sfv6l>_-;Oy1B3x(hp#W z<_!<~i@!6D`jZyjFZ9gJeB$CXoSaqI$o3u{93i1$`FgW_6OOx&#ZoMGisj_^%+2$? z8`R%CCGzd@dGi$VM@$TUq5L{ilfaMnZhZU_@9**@1wIMzbh&5|FLNBO9azxbs5(?u zc35YM8!tgEaqyDLkXEBz(%aOnnISs`3nlI@j#jhM7d{={P;8*fEhWUa}XA>YbQ)_1lxl?+=AEVJmF zl0LzRSzYae*y~)%T=U<{$+0Rrkbf>uToF?Vc|}rd$|}ecIZ2gBkVozmcZH@zTOu%? zm)AY?2Q#|%?3zoZtc72QY=PYS5K*hZP%UPLe(3GfX$vkjxs5ufGVuq2lF^euvCl%X zp%toOVa$quO=rQ?vP$Ux^COm}yl#&Hh%7OmC7~p}=1*WV$lq;&mX)MSAb{*wWc8Ja zch_vlxi%+*(Wx5~k&y$s&0B<(BDHoHk~?tfF?{L5M9{xH!$BeQBE@R7ILUQCsIKT) z)CwTu5iUX9)QwU7AVpgY<{@iXYtSrmuWUO}(vA z92hv&Y_)i3z=(VI?%i(vLO7L=-Xh2a!klnoe*dio8plsYqadAeikv0$?;R?=d)N*4 zt1Oz7N=r#eNMU60x$-5I?KF5_?`&?Pvy1sav77Y0lK6Qis_)btKM57>!sl`;`+V!rlPyf$@@%!U$D}^KuK7%cU8mcvR*r_^S08jw-!0-= zJ^J119#+mcTEHhG^7ogD7>=|{uSy!DK*d%`2@!W^%R>m4A}d5bBb9=7N8H5PtkPlO zu=@q$GI_DD3*Y{I{-teS>e6#w%yRLaiJAqvkG7wmpFUkK!nI_lf>)aK+Nb9mF?%vC zTHD&&Tk-Yv4i+Rq->O_RYn>YvyF~f`Hr=x;d*{+fuaz+1QjX;K(AjCMB}g3|nhU!l ze|qY&&p!4s)9Ptef6pCxEw||oNhvA4HO{^hZt%dh_UFO+sBDEc6~8|rXjp7pjWqJG zL2ou@)?{zZU5V%N_?5LaGnm(tpm}$nIKN0|k7JdRlFHNX7Xn9CFko1NQVeJ!@U@wn zpI0lAzvIqhX=T+rIM@W2R^`f4WyRkq?JjuAo9%iA7*5kNRZRhk9b zG|lI4pqO4G)dung#pH%3%g(kjN>{xot%Lv#4DGd2urX&-E}!W1phDF%Hh3 z5R0cP2`;;+d~`1$NLp`|Xu7}GwJ$76PARmh(+b0~td6yET7*XYpP`Eg8G2mnai_y^ z$Mp=A2HkdW1q=!eZGfA2jsq@_?oV&^anAs<4zdznK{GnIx9OD zvp8I6YJvV0M0ha&Y4jYMW89Pgl6E(2jinFU9JiT3T!(}O-xyfrbQ38#4p-btETexBIyY#fIfi+B7y-UZzS*SqAD zl5nt|m65>$O;%T$+yU`Xsue$B1B%=8 zPEX6ih|YmodV0%EM@uBqSG1kT1qOYWp3{1*PYr|UnR3rN-fh?qeg-8GhO-c0&eBH&PWn02*fq2^GR>W zqwuYTT36euiRS@}))gtfOfk1RvKJ0dO-8@nGme+=fK2@XYe9&=(+K$Xz0;?a_Sz3f zvv%sMg!NJjcR(iKU5|li?SC|NF|E+zSbem-1qKNbPQX=$)OCHbFkWe;gw`R+?uQ?t ziDvCN;onAO;E;=Hl#KO_{BDnK2zaISMvMNH_gKB(s0(%fNT*QVqy;~ZdiA{33GJB+ zxX=a)WJt5H?Z15S!N$g)+gt9HEbpqn^^6Z^r6{UJ!sDK3V1qzH133X(2^(qF%-#AS zm)|Yi1Zy+DULjNgE<00q2`Ap!2?rRJMCOgQ|NTwz{%9ZYxi)`vt7~>OQbgei(N|Ia zYt=K+ycDOzAS&@l*>?M_FW+p4SY`mA_$JkMUp1O0>SnjwXYOJZyK}X6E2}3L_kC8* z2=tG6tEx_vQ@6;8=;u*#HrEZWOo2c`e6REX4gCNu_|FUCYM=rxRm>K*oJ>eaz)|j42jZ`g%~cWmwprJgpqnhMrh49YDmrcm@OP@u z-1jq^in$jo(S+W({d3jZA$$f0C;Gsd49czh70tOwLz5qkF5aLcu*$kf%R#8TRkfln?_YTzFJxMvd%| z>`Sjm{_J3N$8E-z=XZZm1i4*&A-k+&E$xWQsivy4h!dGYc;K|u&>F6 zo>zb}a+%bd4ftmJO0_uW5>FZNfPk0ddC9(;8~UYb88hpo+EHN`pk8Uc%?pnM)0ZzQ ztw$QBca@>E<*G{dedeH+9R6>V(hLDf$4EAz){tyy&ExWlY(j3E7EYmX2gbS=XpyuJ zZO_-TjFmZh0+dtK95j|i{TLPH)f2M~IcP&4dcbbQ>;;K3nuFdZu-yYcmNv&DndX^NItmV%5K~~Ex0oKh|@;3$l%c?@lQ|Ob{WF`45cm@CG z!}wCaXghL^E=!Qk;7#fe6l*yuX`s&Hc`v9zLswug$W^QR*~c~MMv^z1icc*qp$K^^ z|1H#bd8I~PgEq692=v!WEZow19L2c!f+$S-3ASMOOMKGo?|)!eExR-zo$y?2SE`K< zbMm+QsjSm|L=gPtMesRtKx?&0kT&l6`HTGI!VM->w3tLEZqD5ZTxSL{!njY zP-k31$g++;d)m^6F8@FraX7%Bmp~jl0)w_;I6B1_4OQ`!A$n zV8L!Lkbfw58U<2J{Iq#RPMMRmH0I>lg5(D&X*!UboCsk>_AbXDR~)PzW1WacmJML}T!)tc zxur4P5tkx!mwqi@t{`vT&tzl+wQ1YaWOAEJ{UoID3wO*nrWLYB!oTMU=i^S$q-7R+ z-l^Suj3#57X7v$-IRZN1P~c_9E0_Ujt*G@V3)KtFrYL%VICghz=;=-o-x4pHd8+_w z60unQ`QG@6+C}afPsyyTqX`ayr*u|pw%~ZpB&=^c>&Ifdx?Wd5JIl>d<>YiFBs_dK zl&spfZGC1~=kQ@b)3MLxdDrm_R?WxWVSW>n$-)3O86hL)fh?6K1(PbjrWaRp|HR{x zmk`Ow7EqhYXt95RutQmWrgJ2*<{=v!V3|l%VY5DyUBTQtassZxypkIl%+Wn~dtkitX<%T$;By*W!3iwMeeTOc zmG0l>F`D!(@bx>A0=Rhe^qzwtOOFWs8z|%soYiRd_u-nh*Usl>_wbz;3BZ&c3`%nx z=kLHJivnh54|N$q2c|g*2KV56@+I+GkM7X+&+BW>wphYpluyvSb4?~`5Z+UFJe&A4 zCangQB1E;}Er5g7PB$-V{`$pfn(});<(#JB#ks9%8(Dpo*770)n3qV%%JOr$Z0H4d zu@6$ti+_AI)SvWd+h0|me*c>S^lPk+6T%4%%^-*ij-}mohr`_}^uisJ*#AYWF3(u= zn{b(MhmfRLNRC?AYP7v%A|&k1eZRA}J%oFDBL*vN<@||IphF z#6^z@1A@g;0H+3hVRB(%$d@lWdPKYM8g_MD4klB{X%^>NBz+qik9s#<0>HHWLBX(Z z?YG70@d~&CVMbBmrP1OD+|WUAd3d=mlc`XG87tNVYjM0#633I#vr{oiFg52Le02Wl zd9=34_=pIU%b+cO^ftk+4HFS`<~Q16Sj~bkUaTDZ)Ersh;>q;bEu(>7{n|uTG{RFY zG4Yqd0M(y76*2j}KzIxdsG{ed@e84(eWCITN;ZhD0nLEfK8x>Q6|Fb%yA)3zNkW97 zHZ|OZ;|ysih5D3jWVykZp$9}2a2W9?ZU>eIEzf(i1%-$6hta|PA#k8BPKDWHpE05( zR#y6EQr0mY_N?x)#-4MWZPg(x;4YJUm1rhbWV9$Z$B9afNvgDOQ%_djsc7A`NF~Rv;gNz>gqT;q-in8-aoOSw=sNV= z!v$$~Jz3g6S!_V*)Bey8iIL^VgD+{?esXVvfO&X9)6T+LbdCi)ro zXK=_;K6J)yME&0L5iC##fSnYUD>EnE#CP^QI6#4R5}d99>ewN3Icpj+B;8XQrU7@_ z2e)s42KMO887xp`tL&M;oKmsW^lE%p7fbbpRjZINTp~OO_JxsaYvqd*4&AHwW4J6l z-jOrfoxyO?V{A=Wmjazmw7Y(2;v~0kdU8MdZv>y^tV^SM*1>~3{8#`s zIsR_Pt2Gxdm<@-1Hu%K)y73^Kz6bHL?K$otRmBCqyB%+0E8o=K(a{j0MZ!wYLx23b zME3E6S2=?kjJP>&nv&1IeCB@et+*IYT-Og_rL(D9m$Bk5_O}o>UcjZTXS>{&A(I5G zuSn3;3@jMJ3BnPlJ+%A+dqtO0h~kH8dn-={LHq_cGqZRN8HC$d-R?hZsAfCF4|goiYt6@SSbY(gOL9R0 z4Ijuyy#pE`lDuV3YuxjU|U^Th084JRtdCCyP2{yP8_)adXx$cotv8j zPqnM5+38OSiHPz26%W6Nf%k`<9Zpix6ZnMyc|y(vpR4VP>n2-Oo6epz&fE72Z7jcv zrReJFszMU*9$c-O-W5%e>f62*e-@RVF2g=xd|_3C!*X{F^W|F!0g5k*7}Wy*@6xVa zIsX}EmbYII4YFJAXgf!_-5nchn%1Q#%^GmBhby?4vtRiRc9w#;_FLs+PfolH`iqy5 z5qO|iDVcPR?)S?mJI$^jr>0&IRB=CvR@jZJ()j*dz@V>KPblTuQxB^`|hR#QZ%>s$E~-xCF8q zpwa_X6*1^HI9Pgvc0oAD8$+Avv zL!s%Yvoarm*%%b701*!zZXqI|*uHN}r9y%N=&bAV*e26Z z_gm?AYyk58{jEWMo}RvQFzN}H=|UU{1j{j+IA;%dWsfkh0!2ucEZCPq8!%R3(wxRhzT zO$S_T@atN!BOxJOfyH!OK_3hX@Yhb0rYtLK0iAtwGhjBR{R%U70{B}H0{^?_g?xCQ+@l=GWXt<&E^Qjy#j&M zbRn>UrVhX7TKnp0Uc{@oIxK%OQy&E@}(IozNVH|pjZmHI1XC!zJ2;oES{?a zn0SGdUXtLJ=OxFb8p)D_u_ZLUQgSBa3*b{W&0B?r(ol(O_gB`40b7AbD5dy_9n?nr~^Rrc*c={lRSVya15Z?hv4CF-W;}b%7B9 zRsNCggSrUNYdJRmKilTdq5_;D4y&3$|Ik*cN=4?cwk&d6dv6fY%hoD zl)sQMd(b*9XWml29|{OqCM$;;HL~vmapj8bqW}KQ#;EWpY}5Ds@-Dvz10~&$LIc9D zeyL*+72*Hx{}+(?>%+zlpq{ee5zIKM^Ohshv)#X42U<5kos5s^{*jmb`Bro;@PrF} zeg}w08+Q3EsBqa##d*sZT^50*6*V9djMU_4h%*d}o5-`EHb$vw}u}nJ7 zoQ-8WoH;zS<9pT{trX9?Rc`O5hWK5#bpBbJzpLfT1(G#-Y~(&_75_wXODmhC^p&~8 zc5Mc*O;5_p3;f9as%;z7-r;mXU5+TN*qW`vdSed!4Bu$viO?(-Gd#3q<4}t$HF+LC z{H}#}l>%7*g=Jz+gc58$JF{_x1G?I)-Nb)tqW^rf&#z2RrDwt3N)^^S4l2iYb80Tw z!!LVYQ-ogosb949gT~3b%W*;N>GW;3GB$+9fctV!r}FaRw4kampszGN5R5~?q!ygj zalkiGpCs&i|1@;c2zV6~?r?BGR{%nG5rfPGP^%tD{TLD!0cjWXRlFRLQS&;F|2+NQ z@6<~qx+qsTsi(WI4+`@OG&~k#&6Xg2u+IgRLu6$Ka5+bN{sb|c4*n|VD{L@mHI>&? z-Rz3$90fPPf!~3SfgKU#!T=yr(eUr|^z;M%|QDWQpe5T_3FQ0ZzQ7u0&jhUfeGcyP>l=sXo*SujuUiG zBTNR(^xE483MLi{?KlvW<=_HDm{Y1XR%snBSj@H?(`s9D+$f0G+Et2{c;wFOIWbdG z<8-rR)K5A?Yjr@I5IQHgejHg23F+k4(fW%V)4e4+b(zM8+5dZ~**em<>}>xZ2R{m9 z4U$q)!Vy0A4u{4ot1HbN9f>dID4Q#o!j_C;Tga1Add9)oX*mdY+;-=YI zeyy!{Vf-!Gu}i<`y|S_x?St=K%WtHlfQo~O=+OK30o71Jw+2bvb|2BjRnP&)ytF|{ z>S>PSj8B5LHU45x=jhy-*?3GqQWCvs!XY3~^=s%0nVs{^%ja4@y0$VF5&rR?X$@Jh}Q0r?gjk zt5!jqgjN4&Ujx*=^XU{$L7>yphauK0h!;9c#q7`N|JvLHU2D&WUR3K_3YeUB^5|ir zFh;`o2RbfJ8y7Io4gt4m93gd$APt1B=DzB$xTSbVNSyLhLzkB~glpAQUyz!te(BHMxC?i4pE< z@3De02jydzyV6LWy_dDG?LZ$-($@F$}C!?G{ zxhDH8MC3d(0;XZ|X1J&5EsnzHYI(r)7vGNp6m#Yco^&;YCdHreKQ@E-yJYqfMh`!6 z3Y)?MOYs4JA$j?j${lYw00JnD@k&vb)u}v9`Y^CV0=m8Ww6-+WP+F$1TR9>Ea5o3@v9x4Q^2_^ru+D{<)NlUIFLs0+ z0BE)=e83iiQsJ1I!n+pl^oDt;7gE1QXh`R(p z(Ca>{?9mks71k`(@%=s1WE!oFg&=%@>>;3
9%PYoE45uX8t4*j5aeS6!STAJ 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 literal 0 HcmV?d00001 diff --git a/pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/icon.svg b/pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/icon.svg new file mode 100644 index 0000000000..d2c8b0ba6f --- /dev/null +++ b/pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/icon.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/integration.json b/pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/integration.json new file mode 100644 index 0000000000..6947c334a3 --- /dev/null +++ b/pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/integration.json @@ -0,0 +1,467 @@ +{ + "id": "alb", + "title": "Application ELB", + "icon": "file://icon.svg", + "overview": "file://overview.md", + "supported_signals": { + "metrics": true, + "logs": false + }, + "data_collected": { + "metrics": [ + { + "name": "aws_ApplicationELB_ActiveConnectionCount_count", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_ActiveConnectionCount_max", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_ActiveConnectionCount_min", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_ActiveConnectionCount_sum", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_AnomalousHostCount_count", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_AnomalousHostCount_max", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_AnomalousHostCount_min", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_AnomalousHostCount_sum", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_ConsumedLCUs_count", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_ConsumedLCUs_max", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_ConsumedLCUs_min", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_ConsumedLCUs_sum", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HTTPCode_Target_2XX_Count_count", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HTTPCode_Target_2XX_Count_max", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HTTPCode_Target_2XX_Count_min", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HTTPCode_Target_2XX_Count_sum", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HTTPCode_Target_4XX_Count_count", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HTTPCode_Target_4XX_Count_max", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HTTPCode_Target_4XX_Count_min", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HTTPCode_Target_4XX_Count_sum", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HealthyHostCount_count", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HealthyHostCount_max", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HealthyHostCount_min", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HealthyHostCount_sum", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HealthyStateDNS_count", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HealthyStateDNS_max", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HealthyStateDNS_min", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HealthyStateDNS_sum", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HealthyStateRouting_count", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HealthyStateRouting_max", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HealthyStateRouting_min", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_HealthyStateRouting_sum", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_MitigatedHostCount_count", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_MitigatedHostCount_max", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_MitigatedHostCount_min", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_MitigatedHostCount_sum", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_NewConnectionCount_count", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_NewConnectionCount_max", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_NewConnectionCount_min", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_NewConnectionCount_sum", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_PeakLCUs_count", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_PeakLCUs_max", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_PeakLCUs_min", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_PeakLCUs_sum", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_ProcessedBytes_count", + "unit": "Bytes", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_ProcessedBytes_max", + "unit": "Bytes", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_ProcessedBytes_min", + "unit": "Bytes", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_ProcessedBytes_sum", + "unit": "Bytes", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_RequestCountPerTarget_count", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_RequestCountPerTarget_max", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_RequestCountPerTarget_min", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_RequestCountPerTarget_sum", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_RequestCount_count", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_RequestCount_max", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_RequestCount_min", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_RequestCount_sum", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_TargetResponseTime_count", + "unit": "Seconds", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_TargetResponseTime_max", + "unit": "Seconds", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_TargetResponseTime_min", + "unit": "Seconds", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_TargetResponseTime_sum", + "unit": "Seconds", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_UnHealthyHostCount_count", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_UnHealthyHostCount_max", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_UnHealthyHostCount_min", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_UnHealthyHostCount_sum", + "unit": "Count", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_UnhealthyStateDNS_count", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_UnhealthyStateDNS_max", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_UnhealthyStateDNS_min", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_UnhealthyStateDNS_sum", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_UnhealthyStateRouting_count", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_UnhealthyStateRouting_max", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_UnhealthyStateRouting_min", + "unit": "None", + "type": "Gauge", + "description": "" + }, + { + "name": "aws_ApplicationELB_UnhealthyStateRouting_sum", + "unit": "None", + "type": "Gauge", + "description": "" + } + ], + "logs": [] + }, + "telemetry_collection_strategy": { + "aws_metrics": { + "cloudwatch_metric_stream_filters": [ + { + "Namespace": "AWS/ApplicationELB" + } + ] + } + }, + "assets": { + "dashboards": [ + { + "id": "overview", + "title": "ALB Overview", + "description": "Overview of Application Load Balancer", + "image": "file://assets/dashboards/overview.png", + "definition": "file://assets/dashboards/overview.json" + } + ] + } +} diff --git a/pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/overview.md b/pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/overview.md new file mode 100644 index 0000000000..29633b229c --- /dev/null +++ b/pkg/query-service/app/cloudintegrations/serviceDefinitions/aws/alb/overview.md @@ -0,0 +1,3 @@ +### Monitor Application Load Balancers with SigNoz + +Collect key ALB metrics and view them with an out of the box dashboard.