diff --git a/.github/workflows/appsignals-e2e-k8s-test.yml b/.github/workflows/appsignals-e2e-k8s-test.yml index 1d00a906c..2a2405787 100644 --- a/.github/workflows/appsignals-e2e-k8s-test.yml +++ b/.github/workflows/appsignals-e2e-k8s-test.yml @@ -101,10 +101,10 @@ jobs: - name: Call all test APIs continue-on-error: true run: | - curl -S -s http://${{ env.MAIN_SERVICE_ENDPOINT }}:30100/outgoing-http-call/; echo - curl -S -s http://${{ env.MAIN_SERVICE_ENDPOINT }}:30100/aws-sdk-call/; echo - curl -S -s http://${{ env.MAIN_SERVICE_ENDPOINT }}:30100/remote-service?ip=${{ env.REMOTE_SERVICE_IP }}/; echo - curl -S -s http://${{ env.MAIN_SERVICE_ENDPOINT }}:30100/client-call/; echo + curl -S -s http://${{ env.MAIN_SERVICE_ENDPOINT }}:30100/outgoing-http-call; echo + curl -S -s http://${{ env.MAIN_SERVICE_ENDPOINT }}:30100/aws-sdk-call?ip=${{ env.REMOTE_SERVICE_IP }}&testingId=${{ env.TESTING_ID }}; echo + curl -S -s http://${{ env.MAIN_SERVICE_ENDPOINT }}:30100/remote-service?ip=${{ env.REMOTE_SERVICE_IP }}&testingId=${{ env.TESTING_ID }}; echo + curl -S -s http://${{ env.MAIN_SERVICE_ENDPOINT }}:30100/client-call; echo # Validation for pulse telemetry data - name: Validate generated EMF logs @@ -120,7 +120,7 @@ jobs: --app-namespace ${{ env.SAMPLE_APP_NAMESPACE }} --service-name sample-application-${{ env.TESTING_ID }} --remote-service-name sample-r-app-deployment-${{ env.TESTING_ID }} - --query-string ip=${{ env.REMOTE_SERVICE_IP }} + --query-string ip=${{ env.REMOTE_SERVICE_IP }}&testingId=${{ env.TESTING_ID }} --rollup' - name: Validate generated metrics @@ -138,7 +138,7 @@ jobs: --service-name sample-application-${{ env.TESTING_ID }} --remote-service-name sample-r-app-deployment-${{ env.TESTING_ID }} --remote-service-deployment-name sample-r-app-deployment-${{ env.TESTING_ID }} - --query-string ip=${{ env.REMOTE_SERVICE_IP }} + --query-string ip=${{ env.REMOTE_SERVICE_IP }}&testingId=${{ env.TESTING_ID }} --rollup' - name: Validate generated traces @@ -156,7 +156,7 @@ jobs: --service-name sample-application-${{ env.TESTING_ID }} --remote-service-name sample-r-app-deployment-${{ env.TESTING_ID }} --remote-service-deployment-name sample-r-app-deployment-${{ env.TESTING_ID }} - --query-string ip=${{ env.REMOTE_SERVICE_IP }} + --query-string ip=${{ env.REMOTE_SERVICE_IP }}&testingId=${{ env.TESTING_ID }} --rollup' - name: Publish metric on test result diff --git a/validator/src/main/resources/expected-data-template/k8s/aws-sdk-call-log.mustache b/validator/src/main/resources/expected-data-template/k8s/aws-sdk-call-log.mustache index 6c6177bf3..557fbab43 100644 --- a/validator/src/main/resources/expected-data-template/k8s/aws-sdk-call-log.mustache +++ b/validator/src/main/resources/expected-data-template/k8s/aws-sdk-call-log.mustache @@ -23,7 +23,7 @@ "Version": "^1$", "RemoteService": "AWS.SDK.S3", "RemoteOperation": "GetBucketLocation", - "RemoteTarget": "::s3:::e2e-test-bucket-name", + "RemoteTarget": "^::s3:::e2e-test-bucket-name-{{testingId}}$", "aws.span.kind": "^CLIENT$", "host.name": "^ip(-[0-9]{1,3}){4}\\.ec2\\.internal$" }] \ No newline at end of file diff --git a/validator/src/main/resources/expected-data-template/k8s/aws-sdk-call-metric.mustache b/validator/src/main/resources/expected-data-template/k8s/aws-sdk-call-metric.mustache index e013f3bbd..d9ea2fff8 100644 --- a/validator/src/main/resources/expected-data-template/k8s/aws-sdk-call-metric.mustache +++ b/validator/src/main/resources/expected-data-template/k8s/aws-sdk-call-metric.mustache @@ -113,7 +113,7 @@ value: AWS.SDK.S3 - name: RemoteTarget - value: ::s3:::e2e-test-bucket-name + value: ::s3:::e2e-test-bucket-name-{{testingId}} - metricName: Latency @@ -136,7 +136,38 @@ value: AWS.SDK.S3 - name: RemoteTarget - value: ::s3:::e2e-test-bucket-name + value: ::s3:::e2e-test-bucket-name-{{testingId}} + +- + metricName: Latency + namespace: {{metricNamespace}} + dimensions: + - + name: Service + value: {{serviceName}} + - + name: HostedIn.K8s.Cluster + value: {{platformInfo}} + - + name: HostedIn.K8s.Namespace + value: {{appNamespace}} + - + name: RemoteService + value: AWS.SDK.S3 + - + name: RemoteTarget + value: ::s3:::e2e-test-bucket-name-{{testingId}} + +- + metricName: Latency + namespace: {{metricNamespace}} + dimensions: + - + name: RemoteService + value: AWS.SDK.S3 + - + name: RemoteTarget + value: ::s3:::e2e-test-bucket-name-{{testingId}} - metricName: Error @@ -253,7 +284,7 @@ value: AWS.SDK.S3 - name: RemoteTarget - value: ::s3:::e2e-test-bucket-name + value: ::s3:::e2e-test-bucket-name-{{testingId}} - metricName: Error @@ -276,7 +307,38 @@ value: AWS.SDK.S3 - name: RemoteTarget - value: ::s3:::e2e-test-bucket-name + value: ::s3:::e2e-test-bucket-name-{{testingId}} + +- + metricName: Error + namespace: {{metricNamespace}} + dimensions: + - + name: Service + value: {{serviceName}} + - + name: HostedIn.K8s.Cluster + value: {{platformInfo}} + - + name: HostedIn.K8s.Namespace + value: {{appNamespace}} + - + name: RemoteService + value: AWS.SDK.S3 + - + name: RemoteTarget + value: ::s3:::e2e-test-bucket-name-{{testingId}} + +- + metricName: Error + namespace: {{metricNamespace}} + dimensions: + - + name: RemoteService + value: AWS.SDK.S3 + - + name: RemoteTarget + value: ::s3:::e2e-test-bucket-name-{{testingId}} - metricName: Fault @@ -393,7 +455,7 @@ value: AWS.SDK.S3 - name: RemoteTarget - value: ::s3:::e2e-test-bucket-name + value: ::s3:::e2e-test-bucket-name-{{testingId}} - metricName: Fault @@ -416,4 +478,35 @@ value: AWS.SDK.S3 - name: RemoteTarget - value: ::s3:::e2e-test-bucket-name \ No newline at end of file + value: ::s3:::e2e-test-bucket-name-{{testingId}} + +- + metricName: Fault + namespace: {{metricNamespace}} + dimensions: + - + name: Service + value: {{serviceName}} + - + name: HostedIn.K8s.Cluster + value: {{platformInfo}} + - + name: HostedIn.K8s.Namespace + value: {{appNamespace}} + - + name: RemoteService + value: AWS.SDK.S3 + - + name: RemoteTarget + value: ::s3:::e2e-test-bucket-name-{{testingId}} + +- + metricName: Fault + namespace: {{metricNamespace}} + dimensions: + - + name: RemoteService + value: AWS.SDK.S3 + - + name: RemoteTarget + value: ::s3:::e2e-test-bucket-name-{{testingId}} \ No newline at end of file diff --git a/validator/src/main/resources/expected-data-template/k8s/aws-sdk-call-trace.mustache b/validator/src/main/resources/expected-data-template/k8s/aws-sdk-call-trace.mustache index 667ce60e6..007da4739 100644 --- a/validator/src/main/resources/expected-data-template/k8s/aws-sdk-call-trace.mustache +++ b/validator/src/main/resources/expected-data-template/k8s/aws-sdk-call-trace.mustache @@ -2,7 +2,7 @@ "name": "^{{serviceName}}$", "http": { "request": { - "url": "^{{endpoint}}/aws-sdk-call$", + "url": "^{{endpoint}}/aws-sdk-call\\?ip=(([0-9]{1,3}.){3}[0-9]{1,3})&testingId={{testingId}}$", "method": "^GET$" }, "response": { @@ -33,7 +33,7 @@ "name": "^S3$", "http": { "request": { - "url": "^https://e2e-test-bucket-name.s3.{{region}}.amazonaws.com\\?location$", + "url": "^https://e2e-test-bucket-name-{{testingId}}.s3.{{region}}.amazonaws.com\\?location$", "method": "^GET$" } }, @@ -44,7 +44,7 @@ "aws.local.operation": "^GET /aws-sdk-call$", "aws.remote.service": "^AWS\\.SDK\\.S3$", "aws.remote.operation": "GetBucketLocation", - "aws.remote.target": "::s3:::e2e-test-bucket-name" + "aws.remote.target": "^::s3:::e2e-test-bucket-name-{{testingId}}$" }, "metadata": { "default": { diff --git a/validator/src/main/resources/expected-data-template/k8s/remote-service-trace.mustache b/validator/src/main/resources/expected-data-template/k8s/remote-service-trace.mustache index fe7511130..b26a4ab7f 100644 --- a/validator/src/main/resources/expected-data-template/k8s/remote-service-trace.mustache +++ b/validator/src/main/resources/expected-data-template/k8s/remote-service-trace.mustache @@ -2,7 +2,7 @@ "name": "^{{serviceName}}$", "http": { "request": { - "url": "^{{endpoint}}/remote-service\\?ip=(([0-9]{1,3}.){3}[0-9]{1,3})$", + "url": "^{{endpoint}}/remote-service\\?ip=(([0-9]{1,3}.){3}[0-9]{1,3})&testingId={{testingId}}$", "method": "^GET$" }, "response": { diff --git a/validator/src/main/resources/validations/k8s/log-validation.yml b/validator/src/main/resources/validations/k8s/log-validation.yml index e7e209cba..613ce05c8 100644 --- a/validator/src/main/resources/validations/k8s/log-validation.yml +++ b/validator/src/main/resources/validations/k8s/log-validation.yml @@ -8,7 +8,7 @@ validationType: "cw-log" httpPath: "/aws-sdk-call" httpMethod: "get" - callingType: "http" + callingType: "http-with-query" expectedLogStructureTemplate: "K8S_AWS_SDK_CALL_LOG" - validationType: "cw-log" diff --git a/validator/src/main/resources/validations/k8s/metric-validation.yml b/validator/src/main/resources/validations/k8s/metric-validation.yml index 0053253e0..b200b656c 100644 --- a/validator/src/main/resources/validations/k8s/metric-validation.yml +++ b/validator/src/main/resources/validations/k8s/metric-validation.yml @@ -8,7 +8,7 @@ validationType: "cw-metric" httpPath: "/aws-sdk-call" httpMethod: "get" - callingType: "http" + callingType: "http-with-query" expectedMetricTemplate: "K8S_AWS_SDK_CALL_METRIC" - validationType: "cw-metric" diff --git a/validator/src/main/resources/validations/k8s/trace-validation.yml b/validator/src/main/resources/validations/k8s/trace-validation.yml index 3646d461f..c9957d8e9 100644 --- a/validator/src/main/resources/validations/k8s/trace-validation.yml +++ b/validator/src/main/resources/validations/k8s/trace-validation.yml @@ -8,7 +8,7 @@ validationType: "trace" httpPath: "/aws-sdk-call" httpMethod: "get" - callingType: "http" + callingType: "http-with-query" expectedTraceTemplate: "K8S_AWS_SDK_CALL_TRACE" - validationType: "trace"