Coder Social home page Coder Social logo

aws-observability / aws-otel-test-framework Goto Github PK

View Code? Open in Web Editor NEW
27.0 17.0 59.0 3.55 MB

AWS Distro for OpenTelemetry Test Framework

Home Page: https://aws-otel.github.io/

License: Apache License 2.0

Dockerfile 0.36% Shell 1.28% Java 36.81% HCL 29.70% Smarty 12.56% Go 7.84% Python 0.22% Mustache 6.88% Makefile 0.37% JavaScript 0.67% TypeScript 3.30%
open-telemetry open-source observability testing-tools

aws-otel-test-framework's People

Contributors

alexperez52 avatar aneurysm9 avatar anuraaga avatar bhautikpip avatar bjrara avatar bryan-aguilar avatar danielzolty avatar dependabot[bot] avatar erichsueh3 avatar gavindoudou avatar hossain-rayhan avatar humivo avatar jefchien avatar jmb3471 avatar johnwu20 avatar kausik-a avatar khanhntd avatar kkelvinlo avatar kohrapha avatar mxiamxia avatar nathanielrn avatar paurushgarg avatar pingleig avatar rapphil avatar sethamazon avatar shaochengwang avatar tigrannajaryan avatar vasireddy99 avatar vastin avatar wytrivail avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

aws-otel-test-framework's Issues

ADOT Logzio exporter support

Logz.io has verified logzio exporter support using the ADOT collector v0.12.0.
sample usage:

...
exporters:
  logzio:
    account_token: <<LOGZIO_TOKEN>>
    region: <<LOGZIO_REGION>>
...

We conducted performance tests as described here
Here are the results:
100 tps:

{"testcase":"logzio_exporter_trace_mock","instanceType":"m5.2xlarge","receivers":["otlp"],"processors":["batch"],"exporters":["logzio"],"dataType":"otlp","dataMode":"trace","dataRate":100,"avgCpu":0.05555673328184996,"avgMem":59.660970666666664,"commitId":"dummy_commit","collectionPeriod":10,"testingAmi":"soaking_linux"}

1000 tps:

{"testcase":"logzio_exporter_trace_mock","instanceType":"m5.2xlarge","receivers":["otlp"],"processors":["batch"],"exporters":["logzio"],"dataType":"otlp","dataMode":"trace","dataRate":1000,"avgCpu":0.0,"avgMem":0.0,"commitId":"dummy_commit","collectionPeriod":10,"testingAmi":"soaking_linux"}

5000 tps:

{"testcase":"logzio_exporter_trace_mock","instanceType":"m5.2xlarge","receivers":["otlp"],"processors":["batch"],"exporters":["logzio"],"dataType":"otlp","dataMode":"trace","dataRate":5000,"avgCpu":0.04666626908009504,"avgMem":60.59281066666667,"commitId":"dummy_commit","collectionPeriod":10,"testingAmi":"soaking_linux"}

Security group inbound rules are too lax

The current security group setup under the terraform/setup folder has inbound rules with a CIDR group 0.0.0.0/0. This is not allowed under certain security group policies because it allows an arbitrary computer to connect to the instance, and it is sometimes considered a bad security practice.

It would be useful to either change the default behavior or have an option to make these rules more restrictive. In particular, I believe the minimal inbound rules would need to be to

  1. allow other instances within the same security group to connect to each other and
  2. allow the IP from the machine who is doing the setup to connect via SSH, so that Terraform can provision the machines correctly.

Trace data validation issue : Can't use to validate complicated trace data

Actually trace data is a tree whose nodes are segments. When xray SDK emits a trace data which has more than two levels segments, the validator can't validate the segments. So even the template trace data is same with the retrieved trace data from xray API, the integration test will still fail.

For now, we just simple the validation templates which will just validate two level's segments data.

Mark this issue here, in case someone else will meet the same problem. We can improve the validator's ability in the future.

ADOT Appdynamics OTLP support

Appdynamics has verified OTLP support using the ADOT collector v.0.12.0 and collector and contrib v.0.35.0

Appdynamics customers can send traces using the OTLP exporter with the following configuration using an x-api-key

exporters:
     otlphttp:
        endpoint: "<appdynamics-endpoint>"
        headers: {"x-api-key": "secret-api-key"}

More details can be found out here regarding the configuration
https://docs.appdynamics.com/21.9/en/application-monitoring/ingest-opentelemetry-trace-data

Performance model stats are zeros

I have followed this:
https://github.com/aws-observability/aws-otel-test-framework/blob/terraform/docs/get-performance-model.md
And made sure I'm doing every step right and I always get zeros in the output stats

{"testcase":"logzio_exporter_trace_mock","instanceType":"m5.2xlarge","receivers":["otlp"],"processors":["batch"],"exporters":["logzio"],"dataType":"otlp","dataMode":"trace","dataRate":100,"avgCpu":0.0,"avgMem":0.0,"commitId":"dummy_commit","collectionPeriod":10,"testingAmi":"soaking_linux"}

I have tried both with the mock endpoint and a real backend (which isn't receiving anything) and had the same results
Any idea what I'm doing wrong or how to debug what's going on?

This is the output of the command:

Initializing modules...

Initializing the backend...

Initializing provider plugins...
- Using previously-installed hashicorp/random v3.0.1
- Using previously-installed hashicorp/null v3.0.0
- Using previously-installed hashicorp/tls v3.0.0
- Using previously-installed hashicorp/time v0.6.0
- Using previously-installed hashicorp/local v2.0.0
- Using previously-installed hashicorp/template v2.2.0
- Using previously-installed hashicorp/aws v3.28.0

The following providers do not have any version constraints in configuration,
so the latest version was installed.

To prevent automatic upgrades to new major versions that may contain breaking
changes, we recommend adding version constraints in a required_providers block
in your configuration, with the constraint strings suggested below.

* hashicorp/aws: version = "~> 3.28.0"
* hashicorp/local: version = "~> 2.0.0"
* hashicorp/null: version = "~> 3.0.0"
* hashicorp/random: version = "~> 3.0.1"
* hashicorp/template: version = "~> 2.2.0"
* hashicorp/time: version = "~> 0.6.0"
* hashicorp/tls: version = "~> 3.0.0"

Terraform has been successfully initialized!

You may now begin working with Terraform. Try running "terraform plan" to see
any changes that are required for your infrastructure. All Terraform commands
should now work.

If you ever set or change modules or backend configuration for Terraform,
rerun this command to reinitialize your working directory. If you forget, other
commands will detect it and remind you to do so if necessary.
module.ec2_setup.module.ec2_setup.module.basic_components.data.template_file.mocked_server_cert: Refreshing state...
module.ec2_setup.module.ec2_setup.data.template_file.mocked_server_cert_for_windows: Refreshing state...
module.ec2_setup.module.ec2_setup.data.aws_ecr_repository.sample_app: Refreshing state...
module.ec2_setup.module.ec2_setup.module.basic_components.data.aws_iam_role.aoc_iam_role: Refreshing state...
module.ec2_setup.module.ec2_setup.data.aws_ami.selected: Refreshing state...
module.ec2_setup.module.ec2_setup.module.basic_components.data.aws_vpc.aoc_vpc: Refreshing state...
module.ec2_setup.module.ec2_setup.module.basic_components.data.aws_ecr_repository.mocked_servers: Refreshing state...
module.ec2_setup.module.ec2_setup.data.aws_ami.amazonlinux2: Refreshing state...
module.ec2_setup.module.ec2_setup.module.basic_components.data.aws_ecr_repository.sample_apps: Refreshing state...
module.ec2_setup.module.ec2_setup.module.basic_components.data.aws_security_group.aoc_security_group: Refreshing state...
module.ec2_setup.data.aws_ecr_repository.sample_apps: Refreshing state...
module.ec2_setup.module.ec2_setup.module.basic_components.data.aws_subnet_ids.aoc_private_subnet_ids: Refreshing state...
module.ec2_setup.module.ec2_setup.module.basic_components.data.aws_subnet_ids.aoc_public_subnet_ids: Refreshing state...

An execution plan has been generated and is shown below.
Resource actions are indicated with the following symbols:
  + create
 <= read (data resources)

Terraform will perform the following actions:

  # data.template_file.validation_config will be read during apply
  # (config refers to values not yet known)
 <= data "template_file" "validation_config"  {
      + id       = (known after apply)
      + rendered = (known after apply)
      + template = <<~EOT
            -
              validationType: "performance"
              cpuMetricName: "${cpuMetricName}"
              memoryMetricName: "${memoryMetricName}"
              collectionPeriod: ${collectionPeriod}
              datapointPeriod: 60 # The granularity, in seconds, of data points
              dataType: "${dataType}"
              dataMode: "${dataMode}"
              dataRate: ${dataRate}
              otReceivers: [${otReceivers}]
              otProcessors: [${otProcessors}]
              otExporters: [${otExporters}]
              testcase: "${testcase}"
              commitId: "${commitId}"
              instanceId: "${instanceId}"
              instanceType: "${instanceType}"
              launchDate: "${launchDate}"
              exe: "${exe}"
              processName: "${processName}"
              testingAmi: "${testingAmi}"
              negativeSoaking: "${negativeSoaking}"
        EOT
      + vars     = {
          + "collectionPeriod" = "10"
          + "commitId"         = "dummy_commit"
          + "cpuMetricName"    = "procstat_cpu_usage"
          + "dataMode"         = "trace"
          + "dataRate"         = "100"
          + "dataType"         = "otlp"
          + "exe"              = "aws-otel-collector"
          + "instanceId"       = (known after apply)
          + "instanceType"     = "m5.2xlarge"
          + "launchDate"       = (known after apply)
          + "memoryMetricName" = "procstat_memory_rss"
          + "negativeSoaking"  = "false"
          + "otExporters"      = (known after apply)
          + "otProcessors"     = (known after apply)
          + "otReceivers"      = (known after apply)
          + "processName"      = "aws-otel-collector"
          + "testcase"         = "logzio_exporter_trace_mock"
          + "testingAmi"       = "soaking_linux"
        }
    }

  # local_file.validation_config_file will be created
  + resource "local_file" "validation_config_file" {
      + content              = (known after apply)
      + directory_permission = "0777"
      + file_permission      = "0777"
      + filename             = "../../validator/src/main/resources/validations/performance_validation.yml"
      + id                   = (known after apply)
    }

  # time_sleep.wait_until_metrics_collected will be created
  + resource "time_sleep" "wait_until_metrics_collected" {
      + create_duration = "10m"
      + id              = (known after apply)
    }

  # module.validator.data.template_file.docker_compose will be read during apply
  # (config refers to values not yet known)
 <= data "template_file" "docker_compose"  {
      + id       = (known after apply)
      + rendered = (known after apply)
      + template = <<~EOT
            version: '3.8'
            
            services:
              validator:
                build:
                  ../../validator
                volumes:
                  - ~/.aws:/root/.aws
                  - ./output:/var/output
                env_file:
                  - creds.env
                command:
                  - "-c=${validation_config}"
                  - "-t=${testing_id}"
                  - "--region=${region}"
                  - "--endpoint=${sample_app_endpoint}"
                  - "--mocked-server-validating-url=${mocked_server_validating_url}"
                  - "--metric-namespace=${metric_namespace}"
                  - "--canary=${canary}"
                  - "--testcase=${testcase}"
                  - "--ecs-context"
                  - "ecsClusterName=${ecs_cluster_name}"
                  - "--ecs-context"
                  - "ecsTaskArn=${ecs_task_arn}"
                  - "--ecs-context"
                  - "ecsTaskDefFamily=${ecs_taskdef_family}"
                  - "--ecs-context"
                  - "ecsTaskDefVersion=${ecs_taskdef_version}"
                  - "--alarm-names=${cpu_alarm}"
                  - "--alarm-names=${mem_alarm}"
                  - "--alarm-names=${incoming_packets_alarm}"
                  - "--cortex-instance-endpoint=${cortex_instance_endpoint}"
            
        EOT
      + vars     = {
          + "canary"                       = "false"
          + "cortex_instance_endpoint"     = ""
          + "cpu_alarm"                    = ""
          + "ecs_cluster_name"             = ""
          + "ecs_task_arn"                 = ""
          + "ecs_taskdef_family"           = ""
          + "ecs_taskdef_version"          = ""
          + "incoming_packets_alarm"       = ""
          + "mem_alarm"                    = ""
          + "metric_namespace"             = "AWSOtelCollector/PerfTest"
          + "mocked_server_validating_url" = ""
          + "region"                       = "eu-central-1"
          + "sample_app_endpoint"          = ""
          + "testcase"                     = ""
          + "testing_id"                   = (known after apply)
          + "validation_config"            = "performance_validation.yml"
        }
    }

  # module.validator.data.template_file.env_file_template will be read during apply
  # (config refers to values not yet known)
 <= data "template_file" "env_file_template"  {
      + id       = (known after apply)
      + rendered = (known after apply)
      + template = <<~EOT
            AWS_ACCESS_KEY_ID=${aws_access_key_id}
            AWS_SECRET_ACCESS_KEY=${aws_secret_access_key}
            AWS_DEFAULT_REGION=${region}
        EOT
      + vars     = {
          + "aws_access_key_id"     = ""
          + "aws_secret_access_key" = ""
          + "region"                = "eu-central-1"
        }
    }

  # module.validator.local_file.docker_compose_file will be created
  + resource "local_file" "docker_compose_file" {
      + content              = (known after apply)
      + directory_permission = "0777"
      + file_permission      = "0777"
      + filename             = "validator_docker_compose.yml"
      + id                   = (known after apply)
    }

  # module.validator.local_file.env_file will be created
  + resource "local_file" "env_file" {
      + directory_permission = "0777"
      + file_permission      = "0777"
      + filename             = "creds.env"
      + id                   = (known after apply)
    }

  # module.validator.null_resource.validator will be created
  + resource "null_resource" "validator" {
      + id = (known after apply)
    }

  # module.ec2_setup.module.common.random_id.testing_id will be created
  + resource "random_id" "testing_id" {
      + b64_std     = (known after apply)
      + b64_url     = (known after apply)
      + byte_length = 8
      + dec         = (known after apply)
      + hex         = (known after apply)
      + id          = (known after apply)
    }

  # module.ec2_setup.module.ec2_setup.data.template_file.cwagent_config[0] will be read during apply
  # (config refers to values not yet known)
 <= data "template_file" "cwagent_config"  {
      + id       = (known after apply)
      + rendered = (known after apply)
      + template = jsonencode(
            {
              + agent   = {
                  + metrics_collection_interval = 10
                }
              + metrics = {
                  + aggregation_dimensions = [
                      + [
                          + "testcase",
                          + "data_rate",
                          + "testing_ami",
                          + "negative_soaking",
                        ],
                    ]
                  + append_dimensions      = {
                      + InstanceId = "$${aws:InstanceId}"
                    }
                  + metrics_collected      = {
                      + procstat = [
                          + {
                              + append_dimensions = {
                                  + commit_id        = "${commit_id}"
                                  + data_rate        = "${data_rate}"
                                  + instance_type    = "${instance_type}"
                                  + launch_date      = "${launch_date}"
                                  + negative_soaking = "${negative_soaking}"
                                  + testcase         = "${testcase}"
                                  + testing_ami      = "${testing_ami}"
                                }
                              + exe               = "aws-otel-collector"
                              + measurement       = [
                                  + "cpu_usage",
                                  + "memory_rss",
                                ]
                            },
                        ]
                    }
                  + namespace              = "${soaking_metric_namespace}"
                }
            }
        )
      + vars     = {
          + "commit_id"                = "dummy_commit"
          + "data_rate"                = "trace-100"
          + "instance_type"            = "m5.2xlarge"
          + "launch_date"              = (known after apply)
          + "negative_soaking"         = "false"
          + "soaking_metric_namespace" = "AWSOtelCollector/PerfTest"
          + "testcase"                 = "logzio_exporter_trace_mock"
          + "testing_ami"              = "soaking_linux"
        }
    }

  # module.ec2_setup.module.ec2_setup.data.template_file.docker_compose will be read during apply
  # (config refers to values not yet known)
 <= data "template_file" "docker_compose"  {
      + id       = (known after apply)
      + rendered = (known after apply)
      + template = <<~EOT
            version: "3.8"
            services:
              mocked_server:
                image: ${mocked_server_image}
                ports:
                  - "80:8080"
                  - "443:443"
                deploy:
                  resources:
                    limits:
                      memory: 4G
              ot-metric-emitter:
                privileged: true
                image: ${sample_app_image}
                command: ["${data_mode}", "-r=${rate}", "-u=${grpc_endpoint}", "-d=${data_type}"]
                environment:
                  OTEL_RESOURCE_ATTRIBUTES: ${otel_resource_attributes}
                  AWS_XRAY_DAEMON_ADDRESS: ${udp_endpoint}
                  COLLECTOR_UDP_ADDRESS: ${udp_endpoint}
                  AWS_REGION: ${region}
                deploy:
                  resources:
                    limits:
                      memory: 16G
        EOT
      + vars     = {
          + "data_mode"                      = "trace"
          + "data_type"                      = "otlp"
          + "grpc_endpoint"                  = (known after apply)
          + "listen_address"                 = "0.0.0.0:4567"
          + "mocked_server_image"            = "486140753397.dkr.ecr.eu-central-1.amazonaws.com/otel-test/mocked-server:https-latest"
          + "otel_resource_attributes"       = "service.namespace=aws-otel,service.name=aws-otel-integ-test"
          + "rate"                           = "100"
          + "region"                         = "eu-central-1"
          + "sample_app_external_port"       = "8080"
          + "sample_app_image"               = "aottestbed/aws-otel-load-generator:v0.1.0"
          + "sample_app_listen_address_port" = "4567"
          + "testing_id"                     = (known after apply)
          + "udp_endpoint"                   = (known after apply)
        }
    }

  # module.ec2_setup.module.ec2_setup.aws_instance.aoc will be created
  + resource "aws_instance" "aoc" {
      + ami                          = "ami-0a6dc7529cd559185"
      + arn                          = (known after apply)
      + associate_public_ip_address  = true
      + availability_zone            = (known after apply)
      + cpu_core_count               = (known after apply)
      + cpu_threads_per_core         = (known after apply)
      + get_password_data            = false
      + host_id                      = (known after apply)
      + iam_instance_profile         = "aoc-e2e-iam-role"
      + id                           = (known after apply)
      + instance_state               = (known after apply)
      + instance_type                = "m5.2xlarge"
      + ipv6_address_count           = (known after apply)
      + ipv6_addresses               = (known after apply)
      + key_name                     = (known after apply)
      + outpost_arn                  = (known after apply)
      + password_data                = (known after apply)
      + placement_group              = (known after apply)
      + primary_network_interface_id = (known after apply)
      + private_dns                  = (known after apply)
      + private_ip                   = (known after apply)
      + public_dns                   = (known after apply)
      + public_ip                    = (known after apply)
      + secondary_private_ips        = (known after apply)
      + security_groups              = (known after apply)
      + source_dest_check            = true
      + subnet_id                    = "subnet-020ee4905d1b9cb0f"
      + tags                         = {
          + "Name"  = "Integ-test-aoc"
          + "Patch" = "false"
        }
      + tenancy                      = (known after apply)
      + vpc_security_group_ids       = [
          + "sg-00837c0ed60270d9a",
        ]

      + ebs_block_device {
          + delete_on_termination = (known after apply)
          + device_name           = (known after apply)
          + encrypted             = (known after apply)
          + iops                  = (known after apply)
          + kms_key_id            = (known after apply)
          + snapshot_id           = (known after apply)
          + tags                  = (known after apply)
          + throughput            = (known after apply)
          + volume_id             = (known after apply)
          + volume_size           = (known after apply)
          + volume_type           = (known after apply)
        }

      + enclave_options {
          + enabled = (known after apply)
        }

      + ephemeral_block_device {
          + device_name  = (known after apply)
          + no_device    = (known after apply)
          + virtual_name = (known after apply)
        }

      + metadata_options {
          + http_endpoint               = (known after apply)
          + http_put_response_hop_limit = (known after apply)
          + http_tokens                 = (known after apply)
        }

      + network_interface {
          + delete_on_termination = (known after apply)
          + device_index          = (known after apply)
          + network_interface_id  = (known after apply)
        }

      + root_block_device {
          + delete_on_termination = (known after apply)
          + device_name           = (known after apply)
          + encrypted             = (known after apply)
          + iops                  = (known after apply)
          + kms_key_id            = (known after apply)
          + tags                  = (known after apply)
          + throughput            = (known after apply)
          + volume_id             = (known after apply)
          + volume_size           = (known after apply)
          + volume_type           = (known after apply)
        }
    }

  # module.ec2_setup.module.ec2_setup.aws_instance.sidecar will be created
  + resource "aws_instance" "sidecar" {
      + ami                          = "ami-0a6dc7529cd559185"
      + arn                          = (known after apply)
      + associate_public_ip_address  = true
      + availability_zone            = (known after apply)
      + cpu_core_count               = (known after apply)
      + cpu_threads_per_core         = (known after apply)
      + get_password_data            = false
      + host_id                      = (known after apply)
      + iam_instance_profile         = "aoc-e2e-iam-role"
      + id                           = (known after apply)
      + instance_state               = (known after apply)
      + instance_type                = "m5.2xlarge"
      + ipv6_address_count           = (known after apply)
      + ipv6_addresses               = (known after apply)
      + key_name                     = (known after apply)
      + outpost_arn                  = (known after apply)
      + password_data                = (known after apply)
      + placement_group              = (known after apply)
      + primary_network_interface_id = (known after apply)
      + private_dns                  = (known after apply)
      + private_ip                   = (known after apply)
      + public_dns                   = (known after apply)
      + public_ip                    = (known after apply)
      + secondary_private_ips        = (known after apply)
      + security_groups              = (known after apply)
      + source_dest_check            = true
      + subnet_id                    = "subnet-020ee4905d1b9cb0f"
      + tags                         = {
          + "Name"  = "Integ-test-Sample-App"
          + "Patch" = "false"
        }
      + tenancy                      = (known after apply)
      + vpc_security_group_ids       = [
          + "sg-00837c0ed60270d9a",
        ]

      + ebs_block_device {
          + delete_on_termination = (known after apply)
          + device_name           = (known after apply)
          + encrypted             = (known after apply)
          + iops                  = (known after apply)
          + kms_key_id            = (known after apply)
          + snapshot_id           = (known after apply)
          + tags                  = (known after apply)
          + throughput            = (known after apply)
          + volume_id             = (known after apply)
          + volume_size           = (known after apply)
          + volume_type           = (known after apply)
        }

      + enclave_options {
          + enabled = (known after apply)
        }

      + ephemeral_block_device {
          + device_name  = (known after apply)
          + no_device    = (known after apply)
          + virtual_name = (known after apply)
        }

      + metadata_options {
          + http_endpoint               = (known after apply)
          + http_put_response_hop_limit = (known after apply)
          + http_tokens                 = (known after apply)
        }

      + network_interface {
          + delete_on_termination = (known after apply)
          + device_index          = (known after apply)
          + network_interface_id  = (known after apply)
        }

      + root_block_device {
          + delete_on_termination = (known after apply)
          + device_name           = (known after apply)
          + encrypted             = (known after apply)
          + iops                  = (known after apply)
          + kms_key_id            = (known after apply)
          + tags                  = (known after apply)
          + throughput            = (known after apply)
          + volume_id             = (known after apply)
          + volume_size           = (known after apply)
          + volume_type           = (known after apply)
        }
    }

  # module.ec2_setup.module.ec2_setup.aws_key_pair.aws_ssh_key[0] will be created
  + resource "aws_key_pair" "aws_ssh_key" {
      + arn         = (known after apply)
      + fingerprint = (known after apply)
      + id          = (known after apply)
      + key_name    = (known after apply)
      + key_pair_id = (known after apply)
      + public_key  = (known after apply)
    }

  # module.ec2_setup.module.ec2_setup.null_resource.download_collector_from_local[0] will be created
  + resource "null_resource" "download_collector_from_local" {
      + id = (known after apply)
    }

  # module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] will be created
  + resource "null_resource" "install_cwagent" {
      + id = (known after apply)
    }

  # module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0] will be created
  + resource "null_resource" "setup_mocked_server_cert_for_linux" {
      + id = (known after apply)
    }

  # module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server will be created
  + resource "null_resource" "setup_sample_app_and_mock_server" {
      + id = (known after apply)
    }

  # module.ec2_setup.module.ec2_setup.null_resource.start_collector will be created
  + resource "null_resource" "start_collector" {
      + id = (known after apply)
    }

  # module.ec2_setup.module.ec2_setup.tls_private_key.ssh_key[0] will be created
  + resource "tls_private_key" "ssh_key" {
      + algorithm                  = "RSA"
      + ecdsa_curve                = "P224"
      + id                         = (known after apply)
      + private_key_pem            = (sensitive value)
      + public_key_fingerprint_md5 = (known after apply)
      + public_key_openssh         = (known after apply)
      + public_key_pem             = (known after apply)
      + rsa_bits                   = 4096
    }

  # module.ec2_setup.module.ec2_setup.module.basic_components.data.template_file.otconfig will be read during apply
  # (config refers to values not yet known)
 <= data "template_file" "otconfig"  {
      + id       = (known after apply)
      + rendered = (known after apply)
      + template = <<~EOT
            extensions:
              pprof:
                endpoint: 0.0.0.0:1777
            receivers:
              otlp:
                protocols:
                  grpc:
                    endpoint: 0.0.0.0:${grpc_port}
            
            processors:
              batch:
            
            exporters:
              logging:
                loglevel: debug
              logzio:
                account_token: **REAL_TOKEN**
            
            service:
              pipelines:
                traces:
                  receivers: [otlp]
                  processors: [batch]
                  exporters: [logzio]
              extensions: [pprof]
        EOT
      + vars     = {
          + "cortex_instance_endpoint"       = "https://aps-workspaces-gamma.us-west-2.amazonaws.com/workspaces/ws-31eb305d-3208-42d5-a7f4-32ce1191e699"
          + "grpc_port"                      = "4317"
          + "mock_endpoint"                  = "mocked-server/put-data"
          + "otel_service_name"              = "aws-otel-integ-test"
          + "otel_service_namespace"         = "aws-otel"
          + "region"                         = "eu-central-1"
          + "sample_app_listen_address_host" = (known after apply)
          + "sample_app_listen_address_port" = "8080"
          + "testing_id"                     = (known after apply)
          + "udp_port"                       = "55690"
        }
    }

  # module.ec2_setup.module.ec2_setup.module.common.random_id.testing_id will be created
  + resource "random_id" "testing_id" {
      + b64_std     = (known after apply)
      + b64_url     = (known after apply)
      + byte_length = 8
      + dec         = (known after apply)
      + hex         = (known after apply)
      + id          = (known after apply)
    }

  # module.ec2_setup.module.ec2_setup.module.basic_components.module.common.random_id.testing_id will be created
  + resource "random_id" "testing_id" {
      + b64_std     = (known after apply)
      + b64_url     = (known after apply)
      + byte_length = 8
      + dec         = (known after apply)
      + hex         = (known after apply)
      + id          = (known after apply)
    }

Plan: 17 to add, 0 to change, 0 to destroy.

Do you want to perform these actions?
  Terraform will perform the actions described above.
  Only 'yes' will be accepted to approve.

  Enter a value: yes

module.ec2_setup.module.common.random_id.testing_id: Creating...
module.ec2_setup.module.ec2_setup.module.common.random_id.testing_id: Creating...
module.ec2_setup.module.ec2_setup.module.basic_components.module.common.random_id.testing_id: Creating...
module.ec2_setup.module.ec2_setup.tls_private_key.ssh_key[0]: Creating...
module.ec2_setup.module.ec2_setup.module.basic_components.module.common.random_id.testing_id: Creation complete after 0s [id=z_hZwa4JYyc]
module.ec2_setup.module.common.random_id.testing_id: Creation complete after 0s [id=ncB9TdWyOuI]
module.ec2_setup.module.ec2_setup.module.common.random_id.testing_id: Creation complete after 0s [id=TmpIqtP1obY]
module.ec2_setup.module.ec2_setup.tls_private_key.ssh_key[0]: Creation complete after 1s [id=490115bcbcf9a60194a1ed76e20f13d8cd2c6f8b]
module.ec2_setup.module.ec2_setup.aws_key_pair.aws_ssh_key[0]: Creating...
module.ec2_setup.module.ec2_setup.aws_key_pair.aws_ssh_key[0]: Creation complete after 1s [id=testing-4e6a48aad3f5a1b6]
module.ec2_setup.module.ec2_setup.aws_instance.aoc: Creating...
module.ec2_setup.module.ec2_setup.aws_instance.sidecar: Creating...
module.ec2_setup.module.ec2_setup.aws_instance.aoc: Still creating... [10s elapsed]
module.ec2_setup.module.ec2_setup.aws_instance.sidecar: Still creating... [10s elapsed]
module.ec2_setup.module.ec2_setup.aws_instance.sidecar: Creation complete after 15s [id=i-0ae36575df2223043]
module.ec2_setup.module.ec2_setup.module.basic_components.data.template_file.otconfig: Reading...
module.ec2_setup.module.ec2_setup.module.basic_components.data.template_file.otconfig: Read complete after 0s [id=f6bd90068adc012e32be0ced6be792032edd9dc37bf33e8c634f623e209062ad]
module.ec2_setup.module.ec2_setup.aws_instance.aoc: Creation complete after 15s [id=i-02522e3da0b770730]
module.ec2_setup.module.ec2_setup.data.template_file.docker_compose: Reading...
module.ec2_setup.module.ec2_setup.data.template_file.docker_compose: Read complete after 0s [id=3e0f766527f09e3e7688bd86c50807633ae97e21b3ce6bf4de885829fd205fff]
module.ec2_setup.module.ec2_setup.data.template_file.cwagent_config[0]: Reading...
data.template_file.validation_config: Reading...
module.ec2_setup.module.ec2_setup.null_resource.download_collector_from_local[0]: Creating...
module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0]: Creating...
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server: Creating...
module.ec2_setup.module.ec2_setup.data.template_file.cwagent_config[0]: Read complete after 0s [id=76956d15d7e4f1796c44c98a48571d12251bb91d660d48a14db58b93e5616645]
data.template_file.validation_config: Read complete after 0s [id=8d66646e93ef8f14bd5a9773375e1c01dee5132b99eb4db649698beb4cc50eb8]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server: Provisioning with 'file'...
module.ec2_setup.module.ec2_setup.null_resource.download_collector_from_local[0]: Provisioning with 'file'...
module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0]: Provisioning with 'file'...
local_file.validation_config_file: Creating...
local_file.validation_config_file: Creation complete after 0s [id=0b17087a75a400e7c1669fd11bad5f6a0e7c5b39]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server: Provisioning with 'remote-exec'...
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Connecting to remote host via SSH...
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Host: 18.197.140.118
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   User: ec2-user
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Password: false
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Private key: true
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Certificate: false
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   SSH Agent: true
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Checking Host Key: false
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Connected!
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Installing docker
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Loaded plugins: extras_suggestions,
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):               : langpacks, priorities,
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):               : update-motd
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Existing lock /var/run/yum.pid: another copy is running as pid 3118.
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Another app is currently holding the yum lock; waiting for it to exit...
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   The other application is: yum
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     Memory : 141 M RSS (434 MB VSZ)
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     Started: Mon Feb 22 18:19:56 2021 - 00:06 ago
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     State  : Running, pid: 3118
module.ec2_setup.module.ec2_setup.null_resource.download_collector_from_local[0]: Still creating... [10s elapsed]
module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0]: Still creating... [10s elapsed]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server: Still creating... [10s elapsed]
module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0]: Provisioning with 'remote-exec'...
module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0] (remote-exec): Connecting to remote host via SSH...
module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0] (remote-exec):   Host: 3.65.20.192
module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0] (remote-exec):   User: ec2-user
module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0] (remote-exec):   Password: false
module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0] (remote-exec):   Private key: true
module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0] (remote-exec):   Certificate: false
module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0] (remote-exec):   SSH Agent: true
module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0] (remote-exec):   Checking Host Key: false
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Existing lock /var/run/yum.pid: another copy is running as pid 3129.
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Another app is currently holding the yum lock; waiting for it to exit...
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   The other application is: yum
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     Memory :  63 M RSS (280 MB VSZ)
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     Started: Mon Feb 22 18:19:56 2021 - 00:08 ago
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     State  : Running, pid: 3129
module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0] (remote-exec): Connected!
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Another app is currently holding the yum lock; waiting for it to exit...
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   The other application is: yum
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     Memory : 104 M RSS (338 MB VSZ)
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     Started: Mon Feb 22 18:19:56 2021 - 00:10 ago
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     State  : Sleeping, pid: 3129
module.ec2_setup.module.ec2_setup.null_resource.download_collector_from_local[0]: Creation complete after 16s [id=9085561962261652856]
module.ec2_setup.module.ec2_setup.null_resource.start_collector: Creating...
module.ec2_setup.module.ec2_setup.null_resource.start_collector: Provisioning with 'file'...
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Another app is currently holding the yum lock; waiting for it to exit...
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   The other application is: yum
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     Memory : 104 M RSS (338 MB VSZ)
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     Started: Mon Feb 22 18:19:56 2021 - 00:12 ago
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     State  : Running, pid: 3129
module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0]: Creation complete after 16s [id=2141580162287186759]
module.ec2_setup.module.ec2_setup.null_resource.start_collector: Provisioning with 'remote-exec'...
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec): Connecting to remote host via SSH...
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec):   Host: 3.65.20.192
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec):   User: ec2-user
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec):   Password: false
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec):   Private key: true
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec):   Certificate: false
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec):   SSH Agent: true
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec):   Checking Host Key: false
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Another app is currently holding the yum lock; waiting for it to exit...
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   The other application is: yum
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     Memory : 104 M RSS (338 MB VSZ)
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     Started: Mon Feb 22 18:19:56 2021 - 00:14 ago
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     State  : Sleeping, pid: 3129
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec): Connected!
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec): warning: waiting for transaction lock on /var/lib/rpm/.rpm.lock
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server: Still creating... [20s elapsed]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Existing lock /var/run/yum.pid: another copy is running as pid 3350.
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Another app is currently holding the yum lock; waiting for it to exit...
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   The other application is: yum
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     Memory : 134 M RSS (426 MB VSZ)
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     Started: Mon Feb 22 18:20:10 2021 - 00:02 ago
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):     State  : Running, pid: 3350
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Cleaning repos: amzn2-core
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):               : amzn2extra-docker
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 12 metadata files removed
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 4 sqlite files removed
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 0 metadata files removed
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec): Preparing...                          ################################# [100%]
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec): create group aoc, result: 0
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Loaded plugins: extras_suggestions,
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):               : langpacks, priorities,
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):               : update-motd
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec): create user aoc, result: 0
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec): Updating / installing...
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): amzn2-core       | 3.7 kB     00:00
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): amzn2extra-docke | 3.0 kB     00:00
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): (1/5): amzn2-core/ | 2.5 kB   00:00
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): (2/5): amzn2-core/ | 350 kB   00:00
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): (3/5): amzn2extra- |   76 B   00:00
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): (4/5): amzn2extra- |  74 kB   00:00
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): (5/5): amzn2-c 61% |  31 MB   --:-- ETA
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): (5/5): amzn2-core/ |  50 MB   00:00
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec):    1:aws-otel-collector-v0.7.0-1      ################################# [100%]
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec): Created symlink from /etc/systemd/system/multi-user.target.wants/aws-otel-collector.service to /etc/systemd/system/aws-otel-collector.service.
module.ec2_setup.module.ec2_setup.null_resource.start_collector (remote-exec): Redirecting to /bin/systemctl restart aws-otel-collector.service
module.ec2_setup.module.ec2_setup.null_resource.start_collector: Creation complete after 8s [id=6034168181237387800]
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0]: Creating...
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0]: Provisioning with 'file'...
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Resolving Dependencies
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): --> Running transaction check
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): ---> Package docker.x86_64 0:19.03.13ce-1.amzn2 will be installed
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): --> Processing Dependency: runc >= 1.0.0 for package: docker-19.03.13ce-1.amzn2.x86_64
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): --> Processing Dependency: containerd >= 1.3.2 for package: docker-19.03.13ce-1.amzn2.x86_64
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): --> Processing Dependency: pigz for package: docker-19.03.13ce-1.amzn2.x86_64
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): --> Processing Dependency: libcgroup for package: docker-19.03.13ce-1.amzn2.x86_64
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): --> Running transaction check
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): ---> Package containerd.x86_64 0:1.4.1-2.amzn2 will be installed
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): ---> Package libcgroup.x86_64 0:0.41-21.amzn2 will be installed
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): ---> Package pigz.x86_64 0:2.3.4-1.amzn2.0.1 will be installed
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): ---> Package runc.x86_64 0:1.0.0-0.1.20200826.gitff819c7.amzn2 will be installed
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): --> Finished Dependency Resolution

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Dependencies Resolved

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): ========================================
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  Package
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):       Arch   Version
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):                 Repository         Size
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): ========================================
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Installing:
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  docker
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):       x86_64 19.03.13ce-1.amzn2
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):                 amzn2extra-docker  37 M
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Installing for dependencies:
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  containerd
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):       x86_64 1.4.1-2.amzn2
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):                 amzn2extra-docker  24 M
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  libcgroup
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):       x86_64 0.41-21.amzn2
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):                 amzn2-core         66 k
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  pigz x86_64 2.3.4-1.amzn2.0.1
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):                 amzn2-core         81 k
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  runc x86_64 1.0.0-0.1.20200826.gitff819c7.amzn2
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):                 amzn2extra-docker 3.7 M

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Transaction Summary
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): ========================================
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Install  1 Package (+4 Dependent packages)

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Total download size: 65 M
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Installed size: 270 M
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Downloading packages:
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): (1/5): libcgroup-0 |  66 kB   00:00
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): (2/5): pigz-2.3.4- |  81 kB   00:00
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0]: Provisioning with 'remote-exec'...
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): Connecting to remote host via SSH...
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec):   Host: 3.65.20.192
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec):   User: ec2-user
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec):   Password: false
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec):   Private key: true
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec):   Certificate: false
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec):   SSH Agent: true
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec):   Checking Host Key: false
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): (3/5): containerd- |  24 MB   00:00
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): (5/5): runc-1. 75% |  49 MB   --:-- ETA
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): (4/5): runc-1.0.0- | 3.7 MB   00:00
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): (5/5): docker-19.0 |  37 MB   00:00
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): ----------------------------------------
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Total      119 MB/s |  65 MB  00:00
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Running transaction check
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Running transaction test
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Transaction test succeeded
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Running transaction
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : runc-1.0 [         ] 1/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : runc-1.0 [#        ] 1/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : runc-1.0 [##       ] 1/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : runc-1.0 [###      ] 1/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : runc-1.0 [####     ] 1/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : runc-1.0 [#####    ] 1/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : runc-1.0 [######   ] 1/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : runc-1.0 [#######  ] 1/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : runc-1.0 [######## ] 1/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : runc-1.0.0-0.1.202   1/5
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): Connected!
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : containe [         ] 2/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : containe [#        ] 2/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : containe [##       ] 2/5
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): Retrieving https://s3.amazonaws.com/amazoncloudwatch-agent/amazon_linux/amd64/latest/amazon-cloudwatch-agent.rpm
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : containe [###      ] 2/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : containe [####     ] 2/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : containe [#####    ] 2/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : containe [######   ] 2/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : containe [#######  ] 2/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : containe [######## ] 2/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : containerd-1.4.1-2   2/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : pigz-2.3 [         ] 3/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : pigz-2.3 [#        ] 3/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : pigz-2.3 [######   ] 3/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : pigz-2.3 [######## ] 3/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : pigz-2.3.4-1.amzn2   3/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : libcgrou [         ] 4/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : libcgrou [####     ] 4/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : libcgrou [######   ] 4/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : libcgrou [######## ] 4/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : libcgroup-0.41-21.   4/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : docker-1 [         ] 5/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server: Still creating... [30s elapsed]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : docker-1 [#        ] 5/5
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): Preparing...                          ################################# [100%]
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): create group cwagent, result: 0
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): create user cwagent, result: 0
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): Updating / installing...
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : docker-1 [##       ] 5/5
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec):    1:amazon-cloudwatch-agent-1.247347.                                module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): #                                 (  4%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ##                                (  7%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ###                               ( 10%)
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : docker-1 [###      ] 5/5
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ####                              ( 13%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): #####                             ( 16%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ######                            ( 19%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): #######                           ( 22%)
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : docker-1 [####     ] 5/5
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ########                          ( 25%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): #########                         ( 28%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ##########                        ( 31%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ###########                       ( 34%)
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : docker-1 [#####    ] 5/5
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ############                      ( 37%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): #############                     ( 40%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ##############                    ( 43%)
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : docker-1 [######   ] 5/5
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ###############                   ( 46%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ################                  ( 49%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): #################                 ( 51%)
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : docker-1 [#######  ] 5/5
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ##################                ( 54%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ###################               ( 57%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ####################              ( 60%)
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : docker-1 [######## ] 5/5
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): #####################             ( 63%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0]: Still creating... [10s elapsed]
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ######################            ( 66%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): #######################           ( 69%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ########################          ( 72%)
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Installing : docker-19.03.13ce-   5/5
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): #########################         ( 75%)
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Verifying  : docker-19.03.13ce-   1/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Verifying  : libcgroup-0.41-21.   2/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Verifying  : pigz-2.3.4-1.amzn2   3/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Verifying  : containerd-1.4.1-2   4/5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   Verifying  : runc-1.0.0-0.1.202   5/5
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ##########################        ( 78%)

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Installed:
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   docker.x86_64 0:19.03.13ce-1.amzn2

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Dependency Installed:
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   containerd.x86_64 0:1.4.1-2.amzn2
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   libcgroup.x86_64 0:0.41-21.amzn2
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   pigz.x86_64 0:2.3.4-1.amzn2.0.1
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   runc.x86_64 0:1.0.0-0.1.20200826.gitff819c7.amzn2

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Complete!
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   0  ansible2                 available    \
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):         [ =2.4.2  =2.4.6  =2.8  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   2  httpd_modules            available    [ =1.0  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   3  memcached1.5             available    \
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):         [ =1.5.1  =1.5.16  =1.5.17 ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   5  postgresql9.6            available    \
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):         [ =9.6.6  =9.6.8  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   6  postgresql10             available    [ =10  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   8  redis4.0                 available    \
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):         [ =4.0.5  =4.0.10  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   9  R3.4                     available    [ =3.4.3  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  10  rust1                    available    \
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):         [ =1.22.1  =1.26.0  =1.26.1  =1.27.2  =1.31.0  =1.38.0
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):           =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  11  vim                      available    [ =8.0  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  15  php7.2                   available    \
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):         [ =7.2.0  =7.2.4  =7.2.5  =7.2.8  =7.2.11  =7.2.13  =7.2.14
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):           =7.2.16  =7.2.17  =7.2.19  =7.2.21  =7.2.22  =7.2.23
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):           =7.2.24  =7.2.26  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  17  lamp-mariadb10.2-php7.2  available    \
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):         [ =10.2.10_7.2.0  =10.2.10_7.2.4  =10.2.10_7.2.5
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):           =10.2.10_7.2.8  =10.2.10_7.2.11  =10.2.10_7.2.13
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):           =10.2.10_7.2.14  =10.2.10_7.2.16  =10.2.10_7.2.17
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):           =10.2.10_7.2.19  =10.2.10_7.2.22  =10.2.10_7.2.23
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):           =10.2.10_7.2.24  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  18  libreoffice              available    \
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):         [ =5.0.6.2_15  =5.3.6.1  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  19  gimp                     available    [ =2.8.22 ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  20  docker=latest            enabled      \
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):         [ =17.12.1  =18.03.1  =18.06.1  =18.09.9  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  21  mate-desktop1.x          available    \
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):         [ =1.19.0  =1.20.0  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  22  GraphicsMagick1.3        available    \
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):         [ =1.3.29  =1.3.32  =1.3.34  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  23  tomcat8.5                available    \
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):         [ =8.5.31  =8.5.32  =8.5.38  =8.5.40  =8.5.42  =8.5.50
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):           =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  24  epel                     available    [ =7.11  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  25  testing                  available    [ =1.0  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  26  ecs                      available    [ =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  27  corretto8                available    \
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):         [ =1.8.0_192  =1.8.0_202  =1.8.0_212  =1.8.0_222  =1.8.0_232
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):           =1.8.0_242  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  28  firecracker              available    [ =0.11  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  29  golang1.11               available    \
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):         [ =1.11.3  =1.11.11  =1.11.13  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  30  squid4                   available    [ =4  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  31  php7.3                   available    \
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):         [ =7.3.2  =7.3.3  =7.3.4  =7.3.6  =7.3.8  =7.3.9  =7.3.10
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):           =7.3.11  =7.3.13  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  32  lustre2.10               available    \
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):         [ =2.10.5  =2.10.8  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  33  java-openjdk11           available    [ =11  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  34  lynis                    available    [ =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  35  kernel-ng                available    [ =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  36  BCC                      available    [ =0.x  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  37  mono                     available    [ =5.x  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  38  nginx1                   available    [ =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  39  ruby2.6                  available    [ =2.6  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  40  mock                     available    [ =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  41  postgresql11             available    [ =11  =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  42  php7.4                   available    [ =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  43  livepatch                available    [ =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  44  python3.8                available    [ =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  45  haproxy2                 available    [ =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  46  collectd                 available    [ =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  47  aws-nitro-enclaves-cli   available    [ =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  48  R4                       available    [ =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  49  kernel-5.4               available    [ =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  50  selinux-ng               available    [ =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):  51  php8.0                   available    [ =stable ]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Redirecting to /bin/systemctl start docker.service
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ###########################       ( 81%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ############################      ( 84%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): #############################     ( 87%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ##############################    ( 90%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ################################  ( 96%)
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ################################# [100%]
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): donothing
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): ****** processing amazon-cloudwatch-agent ******
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): /opt/aws/amazon-cloudwatch-agent/bin/config-downloader --output-dir /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.d --download-source file:/tmp/cwagent-config.json --mode ec2 --config /opt/aws/amazon-cloudwatch-agent/etc/common-config.toml --multi-config default
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): Successfully fetched the config and saved in /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.d/file_cwagent-config.json.tmp
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): Start configuration validation...
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): /opt/aws/amazon-cloudwatch-agent/bin/config-translator --input /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.json --input-dir /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.d --output /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.toml --mode ec2 --config /opt/aws/amazon-cloudwatch-agent/etc/common-config.toml --multi-config default
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): 2021/02/22 18:20:27 Reading json config file path: /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.d/file_cwagent-config.json.tmp ...
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): Valid Json input schema.
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): I! Detecting run_as_user...
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): No csm configuration found.
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): No log configuration found.
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): Configuration validation first phase succeeded
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): /opt/aws/amazon-cloudwatch-agent/bin/amazon-cloudwatch-agent -schematest -config /opt/aws/amazon-cloudwatch-agent/etc/amazon-cloudwatch-agent.toml
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): Configuration validation second phase succeeded
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): Configuration validation succeeded
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): amazon-cloudwatch-agent has already been stopped
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): Created symlink from /etc/systemd/system/multi-user.target.wants/amazon-cloudwatch-agent.service to /etc/systemd/system/amazon-cloudwatch-agent.service.
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] (remote-exec): Redirecting to /bin/systemctl restart amazon-cloudwatch-agent.service
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0]: Creation complete after 13s [id=6935151388193163709]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):                                  Dload  Upload   Total   Spent    Left  Speed
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec):   0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 100   633  100   633    0     0  42200      0 --:--:-- --:--:-- --:--:-- 42200
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 100 11.6M  100 11.6M    0     0  93.2M      0 --:--:-- --:--:-- --:--:-- 93.2M
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server: Still creating... [40s elapsed]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): WARNING! Using --password via the CLI is insecure. Use --password-stdin.
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Configure a credential helper to remove this warning. See
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): https://docs.docker.com/engine/reference/commandline/login/#credentials-store

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Login Succeeded
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server: Still creating... [50s elapsed]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server: Still creating... [1m0s elapsed]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server: Still creating... [1m10s elapsed]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Creating network "tmp_default" with the default driver
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Pulling mocked_server (486140753397.dkr.ecr.eu-central-1.amazonaws.com/otel-test/mocked-server:https-latest)...

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): https-latest: Pulling from otel-test/mocked-server

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 1e987daa2432: Pulling fs layer

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): a0edb687a3da: Pulling fs layer

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 6891892cc2ec: Pulling fs layer

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 684eb726ddc5: Pulling fs layer

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): b0af097f0da6: Pulling fs layer

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 154aee36a7da: Pulling fs layer

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 684eb726ddc5: Waiting fs layer



module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 1e987daa2432: Extracting [=======================>      
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 1e987daa2432: Extracting [==============================
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 1e987daa2432: Extracting [==============================




























module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): b0af097f0da6: Extracting [==============================
























module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): f1cbebb82916: Extracting [==============================

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 72c4dcdd3df9: Extracting [=>                            
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 72c4dcdd3df9: Extracting [========================>     
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 72c4dcdd3df9: Extracting [==============================
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 72c4dcdd3df9: Pull complete

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Digest: sha256:3242d43a66663e90e98f9fa77cc1b115490aba5a49e18bad94a8b1d8cfafb570

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Status: Downloaded newer image for 486140753397.dkr.ecr.eu-central-1.amazonaws.com/otel-test/mocked-server:https-latest
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Pulling ot-metric-emitter (aottestbed/aws-otel-load-generator:v0.1.0)...

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): v0.1.0: Pulling from aottestbed/aws-otel-load-generator

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): a3f8e652bdc4: Pulling fs layer

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Pulling fs layer

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 839e77426635: Pulling fs layer







module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): a3f8e652bdc4: Extracting [====================================>              ]  45.12MB/61.62MBresource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [>                            module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 







module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [====>                        
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [====>                        
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [====>                        
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [=====>                       

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [======>                      
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [=======>                     

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [========>                    
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [========>                    
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [=========>                   
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [=========>                   
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [==========>                  
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [==========>                  

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [===========>                 

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [============>                
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): a31becf96846: Downloading [================>            


module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [==============>              
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [===============>             
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [================>            
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [================>            
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [=================>           
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [==================>          
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [===================>         
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [====================>        
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [====================>        




module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [=======================>     
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [========================>    



module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [============================>
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [============================>






module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [=============================
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [=============================


module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [=============================
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [=============================
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [=============================
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): d195fe3929b2: Downloading [=============================






















module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): a31becf96846: Extracting [>                             

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): a31becf96846: Extracting [===============>              
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): a31becf96846: Extracting [=======================>                           ]  51.25MB/107.2MBresource.setup_sample_app_and_mock_server (remote-exec): 






module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 99b3293ba661: Extracting [==============================
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 99b3293ba661: Extracting [==============================
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 99b3293ba661: Pull complete

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Digest: sha256:39d954fa0862ecdc75c05304f42eca3a92d51490cc0ba85050d8bf2daf20cebf

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Status: Downloaded newer image for aottestbed/aws-otel-load-generator:v0.1.0
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Creating tmp_ot-metric-emitter_1 ...

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Creating tmp_ot-metric-emitter_1 ... done

module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): Creating tmp_mocked_server_1     ... done
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server (remote-exec): 
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server: Creation complete after 1m54s [id=955047010408652718]
time_sleep.wait_until_metrics_collected: Creating...
time_sleep.wait_until_metrics_collected: Still creating... [10s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [20s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [30s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [40s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [50s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [1m0s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [1m10s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [1m20s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [1m30s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [1m40s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [1m50s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [2m0s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [2m10s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [2m20s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [2m30s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [2m40s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [2m50s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [3m0s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [3m10s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [3m20s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [3m30s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [3m40s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [3m50s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [4m0s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [4m10s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [4m20s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [4m30s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [4m40s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [4m50s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [5m0s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [5m10s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [5m20s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [5m30s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [5m40s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [5m50s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [6m0s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [6m10s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [6m20s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [6m30s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [6m40s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [6m50s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [7m0s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [7m10s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [7m20s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [7m30s elapsed]
^[[Ctime_sleep.wait_until_metrics_collected: Still creating... [7m40s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [7m50s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [8m0s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [8m10s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [8m20s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [8m30s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [8m40s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [8m50s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [9m0s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [9m10s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [9m20s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [9m30s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [9m40s elapsed]
time_sleep.wait_until_metrics_collected: Still creating... [9m50s elapsed]
time_sleep.wait_until_metrics_collected: Creation complete after 10m0s [id=2021-02-22T18:31:45Z]
module.validator.data.template_file.env_file_template: Reading...
module.validator.data.template_file.docker_compose: Reading...
module.validator.data.template_file.docker_compose: Read complete after 0s [id=c5edc904bfecb82f06b7c2fd21b733841b56ed558ff82ae81aae9646493c8466]
module.validator.data.template_file.env_file_template: Read complete after 0s [id=3c3f1eed37e09315d20e412f6ec1cfbfa3cd1c98b9e7d1844153545bfb10bbec]
module.validator.local_file.env_file: Creating...
module.validator.local_file.docker_compose_file: Creating...
module.validator.local_file.env_file: Creation complete after 0s [id=da39a3ee5e6b4b0d3255bfef95601890afd80709]
module.validator.local_file.docker_compose_file: Creation complete after 0s [id=4543cd4c75a46872726c5de84da6311d46edb500]
module.validator.null_resource.validator: Creating...
module.validator.null_resource.validator: Provisioning with 'local-exec'...
module.validator.null_resource.validator (local-exec): Executing: ["/bin/sh" "-c" "docker-compose -f validator_docker_compose.yml down\ndocker-compose -f validator_docker_compose.yml build\ndocker-compose -f validator_docker_compose.yml up --abort-on-container-exit\n"]

module.validator.null_resource.validator (local-exec): Removing performance_validator_1 ... done
module.validator.null_resource.validator (local-exec): Removing network performance_default
module.validator.null_resource.validator (local-exec): Building validator
module.validator.null_resource.validator (local-exec): Step 1/10 : FROM gradle as build
module.validator.null_resource.validator (local-exec):  ---> 4f645797e7ac
module.validator.null_resource.validator (local-exec): Step 2/10 : WORKDIR /app
module.validator.null_resource.validator (local-exec):  ---> Using cache
module.validator.null_resource.validator (local-exec):  ---> 1a66c90af3a5
module.validator.null_resource.validator (local-exec): Step 3/10 : COPY ./build.gradle ./build.gradle
module.validator.null_resource.validator (local-exec):  ---> Using cache
module.validator.null_resource.validator (local-exec):  ---> c4d206a5ca3b
module.validator.null_resource.validator (local-exec): Step 4/10 : COPY ./src ./src
module.validator.null_resource.validator (local-exec):  ---> b438c33d182e
module.validator.null_resource.validator (local-exec): Step 5/10 : RUN gradle build
module.validator.null_resource.validator (local-exec):  ---> Running in d578f36bbc13

module.validator.null_resource.validator (local-exec): Welcome to Gradle 6.8.2!

module.validator.null_resource.validator (local-exec): Here are the highlights of this release:
module.validator.null_resource.validator (local-exec):  - Faster Kotlin DSL script compilation
module.validator.null_resource.validator (local-exec):  - Vendor selection for Java toolchains
module.validator.null_resource.validator (local-exec):  - Convenient execution of tasks in composite builds
module.validator.null_resource.validator (local-exec):  - Consistent dependency resolution

module.validator.null_resource.validator (local-exec): For more details see https://docs.gradle.org/6.8.2/release-notes.html

module.validator.null_resource.validator (local-exec): Starting a Gradle Daemon (subsequent builds will be faster)
module.validator.null_resource.validator: Still creating... [10s elapsed]
module.validator.null_resource.validator: Still creating... [20s elapsed]
module.validator.null_resource.validator: Still creating... [30s elapsed]
module.validator.null_resource.validator: Still creating... [40s elapsed]
module.validator.null_resource.validator (local-exec): > Task :generateLombokConfig
module.validator.null_resource.validator: Still creating... [50s elapsed]
module.validator.null_resource.validator: Still creating... [1m0s elapsed]

module.validator.null_resource.validator (local-exec): > Task :compileJava
module.validator.null_resource.validator (local-exec): /app/src/main/java/com/amazon/aoc/models/Context.java:23: warning: @NonNull is meaningless on a primitive.
module.validator.null_resource.validator (local-exec): @Data
module.validator.null_resource.validator (local-exec): ^
module.validator.null_resource.validator (local-exec): 
module.validator.null_resource.validator (local-exec): 1 warning
module.validator.null_resource.validator (local-exec): 

module.validator.null_resource.validator (local-exec): > Task :processResources
module.validator.null_resource.validator (local-exec): > Task :classes
module.validator.null_resource.validator (local-exec): > Task :jar
module.validator.null_resource.validator (local-exec): > Task :startScripts
module.validator.null_resource.validator (local-exec): > Task :distTar
module.validator.null_resource.validator: Still creating... [1m10s elapsed]
module.validator.null_resource.validator (local-exec): > Task :distZip
module.validator.null_resource.validator (local-exec): > Task :assemble
module.validator.null_resource.validator: Still creating... [1m20s elapsed]
module.validator.null_resource.validator (local-exec): > Task :checkstyleMain
module.validator.null_resource.validator: Still creating... [1m30s elapsed]
module.validator.null_resource.validator (local-exec): > Task :compileTestJava
module.validator.null_resource.validator (local-exec): > Task :processTestResources NO-SOURCE
module.validator.null_resource.validator (local-exec): > Task :testClasses
module.validator.null_resource.validator (local-exec): > Task :checkstyleTest
module.validator.null_resource.validator (local-exec): > Task :test
module.validator.null_resource.validator (local-exec): > Task :check
module.validator.null_resource.validator (local-exec): > Task :build

module.validator.null_resource.validator (local-exec): Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
module.validator.null_resource.validator (local-exec): Use '--warning-mode all' to show the individual deprecation warnings.
module.validator.null_resource.validator (local-exec): See https://docs.gradle.org/6.8.2/userguide/command_line_interface.html#sec:command_line_warnings

module.validator.null_resource.validator (local-exec): BUILD SUCCESSFUL in 1m 31s
module.validator.null_resource.validator (local-exec): 11 actionable tasks: 11 executed
module.validator.null_resource.validator (local-exec): Removing intermediate container d578f36bbc13
module.validator.null_resource.validator (local-exec):  ---> 87860dfb4c5b
module.validator.null_resource.validator (local-exec): Step 6/10 : RUN tar -xvf build/distributions/app.tar
module.validator.null_resource.validator (local-exec):  ---> Running in 239c4f3639a8
module.validator.null_resource.validator (local-exec): app/
module.validator.null_resource.validator (local-exec): app/lib/
module.validator.null_resource.validator (local-exec): app/lib/app.jar
module.validator.null_resource.validator (local-exec): app/lib/log4j-core-2.7.jar
module.validator.null_resource.validator (local-exec): app/lib/log4j-api-2.7.jar
module.validator.null_resource.validator (local-exec): app/lib/compiler-0.8.9.jar
module.validator.null_resource.validator (local-exec): app/lib/commons-io-2.4.jar
module.validator.null_resource.validator (local-exec): app/lib/jackson-dataformat-yaml-2.11.1.jar
module.validator.null_resource.validator (local-exec): app/lib/json-flattener-0.1.0.jar
module.validator.null_resource.validator (local-exec): app/lib/picocli-4.3.2.jar
module.validator.null_resource.validator (local-exec): app/lib/aws-java-sdk-s3-1.11.811.jar
module.validator.null_resource.validator (local-exec): app/lib/aws-java-sdk-cloudwatch-1.11.811.jar
module.validator.null_resource.validator (local-exec): app/lib/aws-java-sdk-xray-1.11.811.jar
module.validator.null_resource.validator (local-exec): app/lib/aws-request-signing-apache-interceptor-b3772780da.jar
module.validator.null_resource.validator (local-exec): app/lib/okhttp-4.9.0.jar
module.validator.null_resource.validator (local-exec): app/lib/aws-java-sdk-kms-1.11.811.jar
module.validator.null_resource.validator (local-exec): app/lib/jmespath-java-1.11.811.jar
module.validator.null_resource.validator (local-exec): app/lib/aws-java-sdk-core-1.11.811.jar
module.validator.null_resource.validator (local-exec): app/lib/guava-12.0.jar
module.validator.null_resource.validator (local-exec): app/lib/jackson-databind-2.11.1.jar
module.validator.null_resource.validator (local-exec): app/lib/snakeyaml-1.26.jar
module.validator.null_resource.validator (local-exec): app/lib/jackson-dataformat-cbor-2.6.7.jar
module.validator.null_resource.validator (local-exec): app/lib/jackson-core-2.11.1.jar
module.validator.null_resource.validator (local-exec): app/lib/minimal-json-0.9.4.jar
module.validator.null_resource.validator (local-exec): app/lib/okio-jvm-2.8.0.jar
module.validator.null_resource.validator (local-exec): app/lib/kotlin-stdlib-1.4.10.jar
module.validator.null_resource.validator (local-exec): app/lib/jsr305-1.3.9.jar
module.validator.null_resource.validator (local-exec): app/lib/jackson-annotations-2.11.1.jar
module.validator.null_resource.validator (local-exec): app/lib/httpclient-4.5.9.jar
module.validator.null_resource.validator (local-exec): app/lib/commons-logging-1.2.jar
module.validator.null_resource.validator (local-exec): app/lib/ion-java-1.0.2.jar
module.validator.null_resource.validator (local-exec): app/lib/joda-time-2.8.1.jar
module.validator.null_resource.validator (local-exec): app/lib/kotlin-stdlib-common-1.4.10.jar
module.validator.null_resource.validator (local-exec): app/lib/annotations-13.0.jar
module.validator.null_resource.validator (local-exec): app/lib/httpcore-4.4.11.jar
module.validator.null_resource.validator (local-exec): app/lib/commons-codec-1.11.jar
module.validator.null_resource.validator (local-exec): app/bin/
module.validator.null_resource.validator (local-exec): app/bin/app.bat
module.validator.null_resource.validator (local-exec): app/bin/app
module.validator.null_resource.validator (local-exec): Removing intermediate container 239c4f3639a8
module.validator.null_resource.validator (local-exec):  ---> f58b0ef6784f

module.validator.null_resource.validator (local-exec): Step 7/10 : FROM amazoncorretto:11
module.validator.null_resource.validator (local-exec):  ---> e5a017eba449
module.validator.null_resource.validator (local-exec): Step 8/10 : WORKDIR /app
module.validator.null_resource.validator (local-exec):  ---> Using cache
module.validator.null_resource.validator (local-exec):  ---> 6be3fd88cfb6
module.validator.null_resource.validator (local-exec): Step 9/10 : COPY --from=build /app/app .
module.validator.null_resource.validator (local-exec):  ---> bdc0094e1821
module.validator.null_resource.validator (local-exec): Step 10/10 : ENTRYPOINT ["/app/bin/app"]
module.validator.null_resource.validator (local-exec):  ---> Running in a72cb089b163
module.validator.null_resource.validator (local-exec): Removing intermediate container a72cb089b163
module.validator.null_resource.validator (local-exec):  ---> 9b2bc6c929f5

module.validator.null_resource.validator (local-exec): Successfully built 9b2bc6c929f5
module.validator.null_resource.validator (local-exec): Successfully tagged performance_validator:latest
module.validator.null_resource.validator (local-exec): Creating network "performance_default" with the default driver
module.validator.null_resource.validator (local-exec): Creating performance_validator_1 ...

module.validator.null_resource.validator (local-exec): Creating performance_validator_1 ... done
module.validator.null_resource.validator (local-exec): 
module.validator.null_resource.validator (local-exec): Attaching to performance_validator_1
module.validator.null_resource.validator (local-exec): validator_1  | 18:33:27.765 [main] INFO  com.amazon.aoc.App - Context(testingId=4e6a48aad3f5a1b6, region=eu-central-1, isCanary=false, metricNamespace=AWSOtelCollector/PerfTest, endpoint=, ecsContext=ECSContext(ecsClusterName=, ecsTaskArn=, ecsTaskDefFamily=, ecsTaskDefVersion=), testcase=, alarmNameList=[, , ], alarmPullingDuration=null, alarmPullingTimes=null, mockedServerValidatingUrl=, cortexInstanceEndpoint=)
module.validator.null_resource.validator (local-exec): validator_1  | 18:33:28.364 [main] INFO  com.amazon.aoc.helpers.RetryHelper - retry attempt left : 29
module.validator.null_resource.validator (local-exec): validator_1  | 18:33:28.365 [main] INFO  com.amazon.aoc.validators.PerformanceValidator - retrieving cpu statistics
module.validator.null_resource.validator (local-exec): validator_1  | 18:33:29.315 [main] INFO  com.amazon.aoc.validators.PerformanceValidator - retrieving memory statistics
module.validator.null_resource.validator (local-exec): validator_1  | 18:33:29.464 [main] INFO  com.amazon.aoc.validators.PerformanceValidator - Result written to performance.json
module.validator.null_resource.validator (local-exec): validator_1  | 18:33:29.465 [main] INFO  com.amazon.aoc.App - Validation has completed in 0 minutes.
module.validator.null_resource.validator (local-exec): performance_validator_1 exited with code 0
module.validator.null_resource.validator (local-exec): Aborting on container exit...
module.validator.null_resource.validator: Creation complete after 1m44s [id=3391905210221969164]

Apply complete! Resources: 17 added, 0 changed, 0 destroyed.
module.ec2_setup.module.ec2_setup.data.template_file.mocked_server_cert_for_windows: Refreshing state... [id=01c1a0f38dbe4ae265c460ff579acb2eaa7a5af72e1c4c1697a5c35d52b6031b]
module.ec2_setup.module.ec2_setup.module.common.random_id.testing_id: Refreshing state... [id=TmpIqtP1obY]
module.ec2_setup.module.ec2_setup.tls_private_key.ssh_key[0]: Refreshing state... [id=490115bcbcf9a60194a1ed76e20f13d8cd2c6f8b]
module.ec2_setup.module.common.random_id.testing_id: Refreshing state... [id=ncB9TdWyOuI]
module.ec2_setup.module.ec2_setup.module.basic_components.module.common.random_id.testing_id: Refreshing state... [id=z_hZwa4JYyc]
module.ec2_setup.module.ec2_setup.module.basic_components.data.template_file.mocked_server_cert: Refreshing state... [id=5f4cd337ea36ef4c932b19bff27d9e93f8cb841bc6ef1c42acdc6eb41497a1c0]
module.ec2_setup.data.aws_ecr_repository.sample_apps: Refreshing state... [id=otel-test/sample-apps]
module.ec2_setup.module.ec2_setup.data.aws_ami.amazonlinux2: Refreshing state... [id=ami-0a6dc7529cd559185]
module.ec2_setup.module.ec2_setup.module.basic_components.data.aws_vpc.aoc_vpc: Refreshing state... [id=vpc-0b393341262aaac5a]
module.ec2_setup.module.ec2_setup.module.basic_components.data.aws_security_group.aoc_security_group: Refreshing state... [id=sg-00837c0ed60270d9a]
module.ec2_setup.module.ec2_setup.module.basic_components.data.aws_ecr_repository.sample_apps: Refreshing state... [id=otel-test/sample-apps]
module.ec2_setup.module.ec2_setup.aws_key_pair.aws_ssh_key[0]: Refreshing state... [id=testing-4e6a48aad3f5a1b6]
module.ec2_setup.module.ec2_setup.module.basic_components.data.aws_ecr_repository.mocked_servers: Refreshing state... [id=otel-test/mocked-server]
module.ec2_setup.module.ec2_setup.module.basic_components.data.aws_iam_role.aoc_iam_role: Refreshing state... [id=aoc-e2e-iam-role]
module.ec2_setup.module.ec2_setup.data.aws_ecr_repository.sample_app: Refreshing state... [id=otel-test/sample-apps]
module.ec2_setup.module.ec2_setup.data.aws_ami.selected: Refreshing state... [id=ami-0a6dc7529cd559185]
module.ec2_setup.module.ec2_setup.module.basic_components.data.aws_subnet_ids.aoc_private_subnet_ids: Refreshing state... [id=vpc-0b393341262aaac5a]
module.ec2_setup.module.ec2_setup.module.basic_components.data.aws_subnet_ids.aoc_public_subnet_ids: Refreshing state... [id=vpc-0b393341262aaac5a]
module.ec2_setup.module.ec2_setup.aws_instance.aoc: Refreshing state... [id=i-02522e3da0b770730]
module.ec2_setup.module.ec2_setup.aws_instance.sidecar: Refreshing state... [id=i-0ae36575df2223043]
module.ec2_setup.module.ec2_setup.null_resource.download_collector_from_local[0]: Refreshing state... [id=9085561962261652856]
module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0]: Refreshing state... [id=2141580162287186759]
module.ec2_setup.module.ec2_setup.module.basic_components.data.template_file.otconfig: Refreshing state... [id=f6bd90068adc012e32be0ced6be792032edd9dc37bf33e8c634f623e209062ad]
module.ec2_setup.module.ec2_setup.data.template_file.docker_compose: Refreshing state... [id=3e0f766527f09e3e7688bd86c50807633ae97e21b3ce6bf4de885829fd205fff]
module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server: Refreshing state... [id=955047010408652718]
module.ec2_setup.module.ec2_setup.null_resource.start_collector: Refreshing state... [id=6034168181237387800]
module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0]: Refreshing state... [id=6935151388193163709]
local_file.validation_config_file: Refreshing state... [id=0b17087a75a400e7c1669fd11bad5f6a0e7c5b39]
time_sleep.wait_until_metrics_collected: Refreshing state... [id=2021-02-22T18:31:45Z]
module.validator.data.template_file.env_file_template: Refreshing state... [id=3c3f1eed37e09315d20e412f6ec1cfbfa3cd1c98b9e7d1844153545bfb10bbec]
module.validator.data.template_file.docker_compose: Refreshing state... [id=c5edc904bfecb82f06b7c2fd21b733841b56ed558ff82ae81aae9646493c8466]
module.validator.local_file.env_file: Refreshing state... [id=da39a3ee5e6b4b0d3255bfef95601890afd80709]
module.validator.local_file.docker_compose_file: Refreshing state... [id=4543cd4c75a46872726c5de84da6311d46edb500]
module.validator.null_resource.validator: Refreshing state... [id=3391905210221969164]

An execution plan has been generated and is shown below.
Resource actions are indicated with the following symbols:
  - destroy

Terraform will perform the following actions:

  # local_file.validation_config_file will be destroyed
  - resource "local_file" "validation_config_file" {
      - content              = <<~EOT
            -
              validationType: "performance"
              cpuMetricName: "procstat_cpu_usage"
              memoryMetricName: "procstat_memory_rss"
              collectionPeriod: 10
              datapointPeriod: 60 # The granularity, in seconds, of data points
              dataType: "otlp"
              dataMode: "trace"
              dataRate: 100
              otReceivers: [otlp]
              otProcessors: [batch]
              otExporters: [logzio]
              testcase: "logzio_exporter_trace_mock"
              commitId: "dummy_commit"
              instanceId: "i-02522e3da0b770730"
              instanceType: "m5.2xlarge"
              launchDate: "2021-02-22"
              exe: "aws-otel-collector"
              processName: "aws-otel-collector"
              testingAmi: "soaking_linux"
              negativeSoaking: "false"
        EOT -> null
      - directory_permission = "0777" -> null
      - file_permission      = "0777" -> null
      - filename             = "../../validator/src/main/resources/validations/performance_validation.yml" -> null
      - id                   = "0b17087a75a400e7c1669fd11bad5f6a0e7c5b39" -> null
    }

  # time_sleep.wait_until_metrics_collected will be destroyed
  - resource "time_sleep" "wait_until_metrics_collected" {
      - create_duration = "10m" -> null
      - id              = "2021-02-22T18:31:45Z" -> null
    }

  # module.validator.local_file.docker_compose_file will be destroyed
  - resource "local_file" "docker_compose_file" {
      - content              = <<~EOT
            version: '3.8'
            
            services:
              validator:
                build:
                  ../../validator
                volumes:
                  - ~/.aws:/root/.aws
                  - ./output:/var/output
                env_file:
                  - creds.env
                command:
                  - "-c=performance_validation.yml"
                  - "-t=4e6a48aad3f5a1b6"
                  - "--region=eu-central-1"
                  - "--endpoint="
                  - "--mocked-server-validating-url="
                  - "--metric-namespace=AWSOtelCollector/PerfTest"
                  - "--canary=false"
                  - "--testcase="
                  - "--ecs-context"
                  - "ecsClusterName="
                  - "--ecs-context"
                  - "ecsTaskArn="
                  - "--ecs-context"
                  - "ecsTaskDefFamily="
                  - "--ecs-context"
                  - "ecsTaskDefVersion="
                  - "--alarm-names="
                  - "--alarm-names="
                  - "--alarm-names="
                  - "--cortex-instance-endpoint="
            
        EOT -> null
      - directory_permission = "0777" -> null
      - file_permission      = "0777" -> null
      - filename             = "validator_docker_compose.yml" -> null
      - id                   = "4543cd4c75a46872726c5de84da6311d46edb500" -> null
    }

  # module.validator.local_file.env_file will be destroyed
  - resource "local_file" "env_file" {
      - directory_permission = "0777" -> null
      - file_permission      = "0777" -> null
      - filename             = "creds.env" -> null
      - id                   = "da39a3ee5e6b4b0d3255bfef95601890afd80709" -> null
    }

  # module.validator.null_resource.validator will be destroyed
  - resource "null_resource" "validator" {
      - id = "3391905210221969164" -> null
    }

  # module.ec2_setup.module.common.random_id.testing_id will be destroyed
  - resource "random_id" "testing_id" {
      - b64_std     = "ncB9TdWyOuI=" -> null
      - b64_url     = "ncB9TdWyOuI" -> null
      - byte_length = 8 -> null
      - dec         = "11367223232734313186" -> null
      - hex         = "9dc07d4dd5b23ae2" -> null
      - id          = "ncB9TdWyOuI" -> null
    }

  # module.ec2_setup.module.ec2_setup.aws_instance.aoc will be destroyed
  - resource "aws_instance" "aoc" {
      - ami                          = "ami-0a6dc7529cd559185" -> null
      - arn                          = "arn:aws:ec2:eu-central-1:486140753397:instance/i-02522e3da0b770730" -> null
      - associate_public_ip_address  = true -> null
      - availability_zone            = "eu-central-1c" -> null
      - cpu_core_count               = 4 -> null
      - cpu_threads_per_core         = 2 -> null
      - disable_api_termination      = false -> null
      - ebs_optimized                = false -> null
      - get_password_data            = false -> null
      - hibernation                  = false -> null
      - iam_instance_profile         = "aoc-e2e-iam-role" -> null
      - id                           = "i-02522e3da0b770730" -> null
      - instance_state               = "running" -> null
      - instance_type                = "m5.2xlarge" -> null
      - ipv6_address_count           = 0 -> null
      - ipv6_addresses               = [] -> null
      - key_name                     = "testing-4e6a48aad3f5a1b6" -> null
      - monitoring                   = false -> null
      - primary_network_interface_id = "eni-06bdf7db35273ec74" -> null
      - private_dns                  = "ip-10-0-196-244.eu-central-1.compute.internal" -> null
      - private_ip                   = "10.0.196.244" -> null
      - public_dns                   = "ec2-3-65-20-192.eu-central-1.compute.amazonaws.com" -> null
      - public_ip                    = "3.65.20.192" -> null
      - secondary_private_ips        = [] -> null
      - security_groups              = [] -> null
      - source_dest_check            = true -> null
      - subnet_id                    = "subnet-020ee4905d1b9cb0f" -> null
      - tags                         = {
          - "Name"  = "Integ-test-aoc"
          - "Patch" = "false"
        } -> null
      - tenancy                      = "default" -> null
      - vpc_security_group_ids       = [
          - "sg-00837c0ed60270d9a",
        ] -> null

      - enclave_options {
          - enabled = false -> null
        }

      - metadata_options {
          - http_endpoint               = "enabled" -> null
          - http_put_response_hop_limit = 1 -> null
          - http_tokens                 = "optional" -> null
        }

      - root_block_device {
          - delete_on_termination = true -> null
          - device_name           = "/dev/xvda" -> null
          - encrypted             = false -> null
          - iops                  = 100 -> null
          - tags                  = {} -> null
          - throughput            = 0 -> null
          - volume_id             = "vol-03cc54ff16ae25b35" -> null
          - volume_size           = 8 -> null
          - volume_type           = "gp2" -> null
        }
    }

  # module.ec2_setup.module.ec2_setup.aws_instance.sidecar will be destroyed
  - resource "aws_instance" "sidecar" {
      - ami                          = "ami-0a6dc7529cd559185" -> null
      - arn                          = "arn:aws:ec2:eu-central-1:486140753397:instance/i-0ae36575df2223043" -> null
      - associate_public_ip_address  = true -> null
      - availability_zone            = "eu-central-1c" -> null
      - cpu_core_count               = 4 -> null
      - cpu_threads_per_core         = 2 -> null
      - disable_api_termination      = false -> null
      - ebs_optimized                = false -> null
      - get_password_data            = false -> null
      - hibernation                  = false -> null
      - iam_instance_profile         = "aoc-e2e-iam-role" -> null
      - id                           = "i-0ae36575df2223043" -> null
      - instance_state               = "running" -> null
      - instance_type                = "m5.2xlarge" -> null
      - ipv6_address_count           = 0 -> null
      - ipv6_addresses               = [] -> null
      - key_name                     = "testing-4e6a48aad3f5a1b6" -> null
      - monitoring                   = false -> null
      - primary_network_interface_id = "eni-07f0793abfb149bf4" -> null
      - private_dns                  = "ip-10-0-200-43.eu-central-1.compute.internal" -> null
      - private_ip                   = "10.0.200.43" -> null
      - public_dns                   = "ec2-18-197-140-118.eu-central-1.compute.amazonaws.com" -> null
      - public_ip                    = "18.197.140.118" -> null
      - secondary_private_ips        = [] -> null
      - security_groups              = [] -> null
      - source_dest_check            = true -> null
      - subnet_id                    = "subnet-020ee4905d1b9cb0f" -> null
      - tags                         = {
          - "Name"  = "Integ-test-Sample-App"
          - "Patch" = "false"
        } -> null
      - tenancy                      = "default" -> null
      - vpc_security_group_ids       = [
          - "sg-00837c0ed60270d9a",
        ] -> null

      - enclave_options {
          - enabled = false -> null
        }

      - metadata_options {
          - http_endpoint               = "enabled" -> null
          - http_put_response_hop_limit = 1 -> null
          - http_tokens                 = "optional" -> null
        }

      - root_block_device {
          - delete_on_termination = true -> null
          - device_name           = "/dev/xvda" -> null
          - encrypted             = false -> null
          - iops                  = 100 -> null
          - tags                  = {} -> null
          - throughput            = 0 -> null
          - volume_id             = "vol-0247a151b168a6c97" -> null
          - volume_size           = 8 -> null
          - volume_type           = "gp2" -> null
        }
    }

  # module.ec2_setup.module.ec2_setup.aws_key_pair.aws_ssh_key[0] will be destroyed
  - resource "aws_key_pair" "aws_ssh_key" {
      - arn         = "arn:aws:ec2:eu-central-1:486140753397:key-pair/testing-4e6a48aad3f5a1b6" -> null
      - fingerprint = "c6:fd:a3:d9:66:c3:c7:eb:3a:2e:79:bb:4c:02:c6:97" -> null
      - id          = "testing-4e6a48aad3f5a1b6" -> null
      - key_name    = "testing-4e6a48aad3f5a1b6" -> null
      - key_pair_id = "key-01ffd609e1363869f" -> null
      - public_key  = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC9ezVt4A9C+FWkNb20yOCpVBNW/A24GItitJbItqD7uJwS6AKEVGvVbsZGwLFAqPFW3vwoy9sjOW2gAQX8Q3AUm0NIb+6R1LLo5wHZDNKJ1fms+b/nAYmKYOOp6DTwkknDEgX1Mm1mrRrqwjaDm3SBAtwjhAC0uNZWMA+LluZQB08GLMo5JCCaMzU/8pUyYLXIhEteST+sDJH2HJEVL0v85cI177fmV+fAzI4urdVrouO45Q6jLZ6+w6G1OedTDXLzZbq4qCAhciA0gWVsPDc0QWtgRhMxasAUcLme1Au1RgtV5zacuB7bPxKdXKjU2p/1buDc47QDzB3Xz3aYV9tlr5cNAcJ0S7EFjQu87vm2toDx74rIYYZtNVn2InJxBh97XsuSuAylbqmM2ipnVh/NNgHxrzE2Pj/gtH/aOSlMcIv5hs8PVToio8LH8fzvsaa2wb5AFfpkxyZvPl6ivUqwOVVpe+7kZSGsI4s73bBhmXTWQ6QAnjqUPXUMecR3FaIDGpTKFHeVBxrLUoDHJ4dRqHGCmMHGt69I748rR4m3v9dcmcwxhfzB5sC992yLGQi2u3hpnq3u2cXbq5Ax6vowypzKiuEp8jYrlMYvSrd6Aj3xl9JD1qRg5RsMt8+mIWw5EukcCzpTnkaRn/LvhAAWEc6TweS905mepbp/cM8/XQ==" -> null
      - tags        = {} -> null
    }

  # module.ec2_setup.module.ec2_setup.null_resource.download_collector_from_local[0] will be destroyed
  - resource "null_resource" "download_collector_from_local" {
      - id = "9085561962261652856" -> null
    }

  # module.ec2_setup.module.ec2_setup.null_resource.install_cwagent[0] will be destroyed
  - resource "null_resource" "install_cwagent" {
      - id = "6935151388193163709" -> null
    }

  # module.ec2_setup.module.ec2_setup.null_resource.setup_mocked_server_cert_for_linux[0] will be destroyed
  - resource "null_resource" "setup_mocked_server_cert_for_linux" {
      - id = "2141580162287186759" -> null
    }

  # module.ec2_setup.module.ec2_setup.null_resource.setup_sample_app_and_mock_server will be destroyed
  - resource "null_resource" "setup_sample_app_and_mock_server" {
      - id = "955047010408652718" -> null
    }

  # module.ec2_setup.module.ec2_setup.null_resource.start_collector will be destroyed
  - resource "null_resource" "start_collector" {
      - id = "6034168181237387800" -> null
    }

  # module.ec2_setup.module.ec2_setup.tls_private_key.ssh_key[0] will be destroyed
  - resource "tls_private_key" "ssh_key" {
      - algorithm                  = "RSA" -> null
      - ecdsa_curve                = "P224" -> null
      - id                         = "490115bcbcf9a60194a1ed76e20f13d8cd2c6f8b" -> null
      - private_key_pem            = (sensitive value)
      - public_key_fingerprint_md5 = "7f:5d:ae:29:65:be:fd:2f:e0:a1:e6:b7:0a:0e:38:b6" -> null
      - public_key_openssh         = <<~EOT
            ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC9ezVt4A9C+FWkNb20yOCpVBNW/A24GItitJbItqD7uJwS6AKEVGvVbsZGwLFAqPFW3vwoy9sjOW2gAQX8Q3AUm0NIb+6R1LLo5wHZDNKJ1fms+b/nAYmKYOOp6DTwkknDEgX1Mm1mrRrqwjaDm3SBAtwjhAC0uNZWMA+LluZQB08GLMo5JCCaMzU/8pUyYLXIhEteST+sDJH2HJEVL0v85cI177fmV+fAzI4urdVrouO45Q6jLZ6+w6G1OedTDXLzZbq4qCAhciA0gWVsPDc0QWtgRhMxasAUcLme1Au1RgtV5zacuB7bPxKdXKjU2p/1buDc47QDzB3Xz3aYV9tlr5cNAcJ0S7EFjQu87vm2toDx74rIYYZtNVn2InJxBh97XsuSuAylbqmM2ipnVh/NNgHxrzE2Pj/gtH/aOSlMcIv5hs8PVToio8LH8fzvsaa2wb5AFfpkxyZvPl6ivUqwOVVpe+7kZSGsI4s73bBhmXTWQ6QAnjqUPXUMecR3FaIDGpTKFHeVBxrLUoDHJ4dRqHGCmMHGt69I748rR4m3v9dcmcwxhfzB5sC992yLGQi2u3hpnq3u2cXbq5Ax6vowypzKiuEp8jYrlMYvSrd6Aj3xl9JD1qRg5RsMt8+mIWw5EukcCzpTnkaRn/LvhAAWEc6TweS905mepbp/cM8/XQ==
        EOT -> null
      - public_key_pem             = <<~EOT
            -----BEGIN PUBLIC KEY-----
            MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAvXs1beAPQvhVpDW9tMjg
            qVQTVvwNuBiLYrSWyLag+7icEugChFRr1W7GRsCxQKjxVt78KMvbIzltoAEF/ENw
            FJtDSG/ukdSy6OcB2QzSidX5rPm/5wGJimDjqeg08JJJwxIF9TJtZq0a6sI2g5t0
            gQLcI4QAtLjWVjAPi5bmUAdPBizKOSQgmjM1P/KVMmC1yIRLXkk/rAyR9hyRFS9L
            /OXCNe+35lfnwMyOLq3Va6LjuOUOoy2evsOhtTnnUw1y82W6uKggIXIgNIFlbDw3
            NEFrYEYTMWrAFHC5ntQLtUYLVec2nLge2z8SnVyo1Nqf9W7g3OO0A8wd1892mFfb
            Za+XDQHCdEuxBY0LvO75traA8e+KyGGGbTVZ9iJycQYfe17LkrgMpW6pjNoqZ1Yf
            zTYB8a8xNj4/4LR/2jkpTHCL+YbPD1U6IqPCx/H877GmtsG+QBX6ZMcmbz5eor1K
            sDlVaXvu5GUhrCOLO92wYZl01kOkAJ46lD11DHnEdxWiAxqUyhR3lQcay1KAxyeH
            UahxgpjBxrevSO+PK0eJt7/XXJnMMYX8webAvfdsixkItrt4aZ6t7tnF26uQMer6
            MMqcyorhKfI2K5TGL0q3egI98ZfSQ9akYOUbDLfPpiFsORLpHAs6U55GkZ/y74QA
            FhHOk8HkvdOZnqW6f3DPP10CAwEAAQ==
            -----END PUBLIC KEY-----
        EOT -> null
      - rsa_bits                   = 4096 -> null
    }

  # module.ec2_setup.module.ec2_setup.module.common.random_id.testing_id will be destroyed
  - resource "random_id" "testing_id" {
      - b64_std     = "TmpIqtP1obY=" -> null
      - b64_url     = "TmpIqtP1obY" -> null
      - byte_length = 8 -> null
      - dec         = "5650408581027439030" -> null
      - hex         = "4e6a48aad3f5a1b6" -> null
      - id          = "TmpIqtP1obY" -> null
    }

  # module.ec2_setup.module.ec2_setup.module.basic_components.module.common.random_id.testing_id will be destroyed
  - resource "random_id" "testing_id" {
      - b64_std     = "z/hZwa4JYyc=" -> null
      - b64_url     = "z_hZwa4JYyc" -> null
      - byte_length = 8 -> null
      - dec         = "14985826448458736423" -> null
      - hex         = "cff859c1ae096327" -> null
      - id          = "z_hZwa4JYyc" -> null
    }

Plan: 0 to add, 0 to change, 17 to destroy.

Do you really want to destroy all resources?
  Terraform will destroy all your managed infrastructure, as shown above.
  There is no undo. Only 'yes' will be accepted to confirm.

  Enter a value: yes   

Destroy cancelled.

Image does not exist

While trying to run examples/docker-compose.yml I got this error message:
Pulling ot-sample-app (mxiamxia/aws-otel-collector-java-sample-app:0.4.0)...
ERROR: pull access denied for mxiamxia/aws-otel-collector-java-sample-app, repository does not exist or may require 'docker login': denied: requested access to the resource is denied

[Error] Cannot build jaeger-zipkin-sample-app sample app with the instruction

Hi, I am revising StatsD related parts for my new phase of StatsD receiver. I followed this link here: https://github.com/aws-observability/aws-otel-test-framework/blob/terraform/docs/setup-basic-components-in-aws-account.md#3-build-sample-app-images .Without having any change to the test-framework, it shows the error below after running terraform apply.It seems something wrong with the jaeger-zipkin-sample-app's Dockerfile? Can anyone take a look? Thanks!


Error: Error running command 'docker build -t 893115206021.dkr.ecr.us-west-2.amazonaws.com/otel-test/sample-apps:jaeger-zipkin-sample-app-latest ../../sample-apps/jaeger-zipkin-sample-app/': exit status 1. Output: #1 [internal] load build definition from Dockerfile
#1 sha256:0d4dde30d1de842e7e078832ee886f8b598b24fe4b1a61f6175dd5ad8eb715a8
#1 transferring dockerfile: 40B done
#1 DONE 0.0s

#2 [internal] load .dockerignore
#2 sha256:dde79ab63d702299f2d5296011eb0de8823f83111c99c636fba1e2e6c35b259c
#2 transferring context: 2B done
#2 DONE 0.0s

#3 [internal] load metadata for docker.io/library/amazoncorretto:11
#3 sha256:3143a3f91b4c0a76e3735944f3bff097a1a74b208d87b0f6b50a6ae1b61ac036
#3 DONE 0.0s

#4 [internal] load metadata for docker.io/library/gradle:6.8.3
#4 sha256:f1479fba6206846c3b9280bb20f0b5ae501f4e5331676be1e0f0fae1fb8603c1
#4 DONE 1.3s

#5 [stage-1 1/3] FROM docker.io/library/amazoncorretto:11
#5 sha256:71a1a7aa0138ac0a412a10d6bbbffb180ed06ec645d0b81118696111a3b0a0aa
#5 DONE 0.0s

#6 [stage-1 2/3] WORKDIR /app
#6 sha256:2e5e4f0f9e841e31d1d5e8c47c19ce31471d531e5dcf5d0d532987da8cbeffd9
#6 CACHED

#7 [builder 1/7] FROM docker.io/library/gradle:6.8.3@sha256:9f6cc23298a3067f1ea36a1199cdc7af21d0993dcfd6c00e6ba585a0e460a76a
#7 sha256:492367bd77dbf0134d7554b7652c9f6532c85f5e9028fe93195e82fba69aa7fe
#7 DONE 0.0s

#9 [internal] load build context
#9 sha256:92a7d9e84aa074293fd8a4472c167dd1b602fd8711dba27315aca25199c10700
#9 transferring context: 316B done
#9 DONE 0.0s

#11 [builder 4/7] COPY ./src ./src
#11 sha256:77e7ebe32c7d699eb8842d01f9bdda5651825b3ccbb4772a6a2ceef3a24485bf
#11 CACHED

#10 [builder 3/7] COPY ./build.gradle ./build.gradle
#10 sha256:e76363dd6b55a26309007ea4ae60cc3c02b90616db439036d55cdac2bb35bcfb
#10 CACHED

#12 [builder 5/7] COPY ./build/ ./build/
#12 sha256:c1bf6fea5e88c0db38e641e9d39ae58a7e92a05a606d4005466121b8bc8422ce
#12 ERROR: "/build" not found: not found

#8 [builder 2/7] WORKDIR /app
#8 sha256:a593e0b6f8c517cd5afd9f28b5ca6b15eb1cbc899d0018517909d62db5dcc125
#8 CACHED
------
 > [builder 5/7] COPY ./build/ ./build/:
------
failed to compute cache key: "/build" not found: not found

Module layout for Container Insight integration tests

When initiating integration tests for container insight in PR: #247, we debated a lot on whether test cases should be merged into /terraform/eks or remain in a new folder /terraform/containerinsight-eks-prometheus.

This issue is created to keep track of the remaining tasks:

  1. Merge /terraform/containerinsight-eks-prometheus into /terraform/eks. (PR in review)
  2. Merge CWMetricValidator and ContainerInsightMetricValidator.
  3. Provide design docs, and guidance for adding new test cases.

Full history records can be found in #247 (comment).

ADOT Lightstep OTLP Support

Lightstep has verified OTLP support using the ADOT collector v0.12.0.

Lightstep customers using public satellites can send traces to Lightstep using the OTLP exporter with the following configuration using a Lightstep Access Token:

...
exporters:
  otlp:
    endpoint: ingest.lightstep.com:443
    headers:
      "lightstep-access-token": "${LS_ACCESS_TOKEN}"
...

Testing if the propagator is set correctly

Description

In PR on AWS OTel Python aws-observability/aws-otel-python#14 I realized that I had not set the propagator correctly for one of my apps, yet I was still able to pass the validator

-c default-otel-trace-validation.yml --endpoint http://app:8080 --metric-namespace default -t ${{ github.run_id }}-${{ github.run_number }}

command without a problem because my traces were still appearing in X-Ray.

Is it possible to add an automatic test to check if the propagator is set by looking at the headers? The sample apps may need to be updated to do a more complicated setup too.

I remember I verified this manually by setting up CloudWatch Logs to monitor SQS messages sent from a Lambda which lead me to see that

"AWSTraceHeader": "Root=1-5fdd3a92-574ad3d7c4848e12227de280;Parent=018121e92134972f;Sampled=1",

was in fact included in the traces being sent to X-Ray.

ADOT Dynatrace OTLP support

Dynatrace has verified OTLP support using the ADOT collector.

Dynatrace users can use the OTLP/HTTP exporter to send OpenTelemetry trace data to our OTLP Trace Ingest API.
The documentation can be found here: https://www.dynatrace.com/support/help/how-to-use-dynatrace/transactions-and-services/purepath-distributed-traces/opentelemetry-ingest/
Here is a full example on how to configure ADOT to send traces to our endpoint:
https://www.dynatrace.com/support/help/how-to-use-dynatrace/transactions-and-services/purepath-distributed-traces/opentelemetry-ingest/how-to-lambda/

The exporter endpoint configuration should look as follows:

...
exporters:
  otlphttp:
    endpoint: "https://${DYNATRACE_TENANT_ID}.live.dynatrace.com/api/v2/otlp"
    headers:
      "Authorization": "Api-Token ${DYNATRACE_API_TOKEN}"
...

Allow reading expected test templates from files

Currently, all expectations are in resources in this repo. But since sample apps and tested instrumentations are in different repos, really the expectations should live there too - when updating an app and something breaks, we fix the apps and tests at the same time.

[framework] Port resource clean up logic from deprecating branch

terraform fails to delete resource for various reasons (e.g. test took too long and its k8s token is outdated, leaving namespace around).

Most env setup logic is in tf, but it's hard to write resource clean up logic in tf. Further more we need to deal with problems like #253, which we are using shell script, I plan to write a go util to handle all those util tasks so it's easier to extend and maintain in the future.

prometheus_mock test fails

awscollector logs

2021-11-15T16:46:38.844Z info service/collector.go:132 Everything is ready. Begin running and processing data.

panic: runtime error: invalid memory address or nil pointer dereference

[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xcbba3d]


goroutine 86 [running]:

github.com/open-telemetry/opentelemetry-collector-contrib/exporter/awsprometheusremotewriteexporter.(*signingRoundTripper).RoundTrip(0xc000661220, 0xc0007b2b00)

github.com/open-telemetry/opentelemetry-collector-contrib/exporter/[email protected]/auth.go:47 +0x3d

net/http.send(0xc0007b2a00, {0x3778ea0, 0xc000661220}, {0x31c1f60, 0x4af101, 0x533ab20})

net/http/client.go:252 +0x5d8

net/http.(*Client).send(0xc000824900, 0xc0007b2a00, {0x7f62c12e3518, 0xc000114b20, 0x533ab20})

net/http/client.go:176 +0x9b

net/http.(*Client).do(0xc000824900, 0xc0007b2a00)

net/http/client.go:725 +0x908

net/http.(*Client).Do(...)

net/http/client.go:593

github.com/open-telemetry/opentelemetry-collector-contrib/exporter/prometheusremotewriteexporter.(*PRWExporter).execute(0xc00051f1a0, {0x37e1408, 0xc000500660}, 0x5e9d6a)

github.com/open-telemetry/opentelemetry-collector-contrib/exporter/[email protected]/exporter.go:277 +0x4c5

github.com/open-telemetry/opentelemetry-collector-contrib/exporter/prometheusremotewriteexporter.(*PRWExporter).export.func1()

github.com/open-telemetry/opentelemetry-collector-contrib/exporter/[email protected]/exporter.go:241 +0xf3

created by github.com/open-telemetry/opentelemetry-collector-contrib/exporter/prometheusremotewriteexporter.(*PRWExporter).export

github.com/open-telemetry/opentelemetry-collector-contrib/exporter/[email protected]/exporter.go:237 +0x256

It seems to be an issue with the configuration. Since stopping the sample app and restarting the collector yields the same result.

[Question]The task cannot be established in ECS

I am running ECS test but it shows the ECS instance is not there:
image

It says that there is no container instance:
image

But there are two instances in EC2 console:
image

It's not a bug because I could run successfully a few days ago when I tested my previous change. Just want to see does anyone encounter this problem? How to fix it on my side? Thanks!

ADOT New Relic OTLP Support

New Relic has verified OTLP support using the ADOT collector.

Customers exporting OTLP data to New Relic via our early access program can use an exporter configuration pointing at the New Relic OTLP endpoint along with a New Relic ingest license key:

...

exporters:
  otlp:
    endpoint: ${OTEL_EXPORTER_OTLP_ENDPOINT}
    headers:
      api-key: ${NEW_RELIC_LICENSE_KEY}

...

New Relic is in the process of validating OTLP histogram support and we'll update our progress in the coming weeks.

ADOT Sumo Logic OTLP HTTP Support

Sumo Logic has verified OTLP HTTP support using the ADOT collector in version v0.11.0

exporters:
  otlphttp:
    endpoint: ${SUMO_HTTP_TRACES_URL}

Sumo Logic recommends to use batch processor in case of sending data.

processors:
  batch/traces:
    timeout: 5s
    send_batch_size: 512

Maintaining apps for downstream framework consumers

aws-otel-java-instrumentation currently uses this test framework with springboot and spark apps. Currently the build is failing

https://github.com/aws-observability/aws-otel-java-instrumentation/runs/1745962540?check_suite_focus=true

From what I can tell, it is because the test framework is expecting a new totalApiBytes metric which we hadn't implemented yet. I'm wondering, when adding new validations, can we make sure to propagate the changes to the other aws-observability repositories?

Also, I wonder if the spark app can be removed from this repository since aws-otel-java-instrumentation contains a similar app too. There doesn't seem to be a reason to maintain both apps, and I think it's something we wanted to avoid.

ADOT Datadog exporter traces support

Datadog has verified the datadog exporter traces support using the ADOT collector v0.12.0. Example usage:

# ...
exporters:
  datadog:
    api:
      key: <<API KEY>>
      site: <<Datadog site>>

# ...
100 TPS
{
   "testcase":"datadog_exporter_trace_mock",
   "instanceType":"m5.2xlarge",
   "receivers":[
      "otlp"
   ],
   "processors":[
      "batch"
   ],
   "exporters":[
      "datadog"
   ],
   "dataType":"otlp",
   "dataMode":"trace",
   "dataRate":100,
   "avgCpu":7.970433210915003,
   "avgMem":72.67109546666667,
   "commitId":"dummy_commit",
   "collectionPeriod":10,
   "testingAmi":"soaking_linux"
}
1000 TPS
{
   "testcase":"datadog_exporter_trace_mock",
   "instanceType":"m5.2xlarge",
   "receivers":[
      "otlp"
   ],
   "processors":[
      "batch"
   ],
   "exporters":[
      "datadog"
   ],
   "dataType":"otlp",
   "dataMode":"trace",
   "dataRate":1000,
   "avgCpu":31.698562946404234,
   "avgMem":78.11624959999999,
   "commitId":"dummy_commit",
   "collectionPeriod":10,
   "testingAmi":"soaking_linux"
}
5000 TPS
{
   "testcase":"datadog_exporter_trace_mock",
   "instanceType":"m5.2xlarge",
   "receivers":[
      "otlp"
   ],
   "processors":[
      "batch"
   ],
   "exporters":[
      "datadog"
   ],
   "dataType":"otlp",
   "dataMode":"trace",
   "dataRate":5000,
   "avgCpu":113.51224673332504,
   "avgMem":92.87857493333334,
   "commitId":"dummy_commit",
   "collectionPeriod":10,
   "testingAmi":"soaking_linux"
}

We also conducted end to end testing to validate the behavior.

This supersedes aws-observability/aws-otel-collector#593.

[ecs] Terraform destroy failed because it destroy cluster before scaling down asg

I upgraded our ECS module https://github.com/infrablocks/terraform-aws-ecs-cluster from 3.0.0 to 4.0.0 because it is having syntax error. After that I start to get Error: Error deleting ECS cluster: ClusterContainsContainerInstancesException: The Cluster cannot be deleted while Container Instances are active or draining hashicorp/terraform-provider-aws#4852 (comment)

I didn't dive too much into the ECS module. One possible cause is in previous version we create asg after creating ECS cluster, so asg got destroyed first and there is no exception. In the new version this behaviour is reversed and we are trying to delete ECS cluster before scaling down asg.

There are a couple ways to fix it

  • write our own ECS module without relying on third party modules
  • use aotutil/awscli to scale down the asg before/during terraform destroy (similar as what we do for naws patching)
  • downgrade my local terraform version because I remember we locked version in workflow for some reason
    • and the reason is the ECS module we were using does not work for 0.14/5 ... ๐Ÿ˜„

containerinsight_eks_prometheus test is failing

https://github.com/aws-observability/aws-otel-collector/runs/3416656988?check_suite_focus=true#logs

For some reason the nginx_ingress_controller_nginx_process_connections_total metric is not being picked up by the Collector, even though all the other nginx metrics are.

validator_1  | com.amazon.aoc.exception.BaseException:
โ”‚ [ContainerInsight] metric
โ”‚ nginx_ingress_controller_nginx_process_connections_total not found with
โ”‚ dimension [ClusterName: aws-otel-testing-framework-eks, Namespace:
โ”‚ nginx-349dacac375861a3, Service:
โ”‚ nginx-349dacac375861a3-ingress-nginx-controller-metrics]

I reproduced the issue and scraped the nginx server's Prometheus endpoint myself, and did see the nginx_ingress_controller_nginx_process_connections_total metric reported:

# HELP nginx_ingress_controller_nginx_process_connections_total total number of connections with state {accepted, handled}
# TYPE nginx_ingress_controller_nginx_process_connections_total counter
nginx_ingress_controller_nginx_process_connections_total{controller_class="nginx",controller_namespace="nginx-aacb4125dbe93c21",controller_pod="nginx-aacb4125dbe93c21-ingress-nginx-controller-64fcfb4cc8zkd4l",state="accepted"} 27333
nginx_ingress_controller_nginx_process_connections_total{controller_class="nginx",controller_namespace="nginx-aacb4125dbe93c21",controller_pod="nginx-aacb4125dbe93c21-ingress-nginx-controller-64fcfb4cc8zkd4l",state="handled"} 27333

I added some logging around here in the Prometheus receiver and saw that the metric was not present even at that point (other nginx metrics were).

For now, we will comment out that metric from the verification.

soaking test optimization

this issue is to record some of my thoughts on soaking test

1. Negative data format onto receiver

right now we only have a negative soaking with a false mock endpoint which can only test exporter.
we need a negative soaking onto receiver which emits false format data.

2. Notification of soaking test.

right now we check the result soaking test result on github proactively, it's nice but push model is better than pull model in this case :)

We need a notification either via email or issue when soaking is failing, also we can publish a weekly summary report to our contributors about the soaking test result for each components.

Validator fails: Amazon CloudWatch listMetrics permission missing

I already have given admin access to my security credentials. Still, getting invalid security token exception while running the validation. Point to be noted, my task is running and metrics are being stored. Only the validation is failing and I believe it's because of the absence of listMetrics permission.

After doing a little investigation, I found that the role is being created with the following permissions. I don't see any permission for listMetrics.

# module.ecs_cluster.aws_iam_policy.cluster_instance_policy will be created
  + resource "aws_iam_policy" "cluster_instance_policy" {
      + arn         = (known after apply)
      + description = (known after apply)
      + id          = (known after apply)
      + name        = (known after apply)
      + path        = "/"
      + policy      = jsonencode(
            {
              + Statement = [
                  + {
                      + Action   = [
                          + "ecs:CreateCluster",
                          + "ecs:DeregisterContainerInstance",
                          + "ecs:DiscoverPollEndpoint",
                          + "ecs:Poll",
                          + "ecs:RegisterContainerInstance",
                          + "ecs:StartTelemetrySession",
                          + "ecs:Submit*",
                          + "ecr:GetAuthorizationToken",
                          + "ecr:GetDownloadUrlForLayer",
                          + "ecr:BatchGetImage",
                          + "ecr:BatchCheckLayerAvailability",
                          + "s3:GetObject",
                          + "logs:CreateLogStream",
                          + "logs:PutLogEvents",
                        ]
                      + Effect   = "Allow"
                      + Resource = "*"
                    },
                ]
              + Version   = "2012-10-17"
            }
        )
    }

Check the full error log:
Screen Shot 2020-11-13 at 12 28 34 PM

Publish validator as a docker image

Right now, our workflows generally have three steps, one to docker-compose up the collector, one to docker run a sample app, and one to gradlew run the test validator. We should just publish docker images of the validator so this can be a single docker-compose command. The best result of this is that log messages of all three components will be properly visible.

ADOT Splunk SAPM Exporter tracing support

Splunk has verified the SAPM Exporter reporting to our public trace endpoint in the ADOT v0.12.0:

exporters:
  sapm:
    access_token: <token>
    endpoint: https://ingest.us1.signalfx.com/v2/trace

Soak test results:

100 tps:

{
    "avgCpu": 3.3516783033654782,
    "avgMem": 80.60757333333335,
    "collectionPeriod": 10,
    "commitId": "dummy_commit",
    "dataMode": "trace",
    "dataRate": 100,
    "dataType": "otlp",
    "exporters": [
        "sapm"
    ],
    "instanceType": "m5.2xlarge",
    "processors": [
        "batch"
    ],
    "receivers": [
        "otlp"
    ],
    "testcase": "sapm_exporter_trace_mock",
    "testingAmi": "soaking_linux"
}

1000 tps:

{
    "avgCpu": 25.467182513974535,
    "avgMem": 84.52491946666667,
    "collectionPeriod": 10,
    "commitId": "dummy_commit",
    "dataMode": "trace",
    "dataRate": 1000,
    "dataType": "otlp",
    "exporters": [
        "sapm"
    ],
    "instanceType": "m5.2xlarge",
    "processors": [
        "batch"
    ],
    "receivers": [
        "otlp"
    ],
    "testcase": "sapm_exporter_trace_mock",
    "testingAmi": "soaking_linux"
}

5000 tps:

{
    "avgCpu": 105.86498639766928,
    "avgMem": 89.87368106666666,
    "collectionPeriod": 10,
    "commitId": "dummy_commit",
    "dataMode": "trace",
    "dataRate": 5000,
    "dataType": "otlp",
    "exporters": [
        "sapm"
    ],
    "instanceType": "m5.2xlarge",
    "processors": [
        "batch"
    ],
    "receivers": [
        "otlp"
    ],
    "testcase": "sapm_exporter_trace_mock",
    "testingAmi": "soaking_linux"
}

ADOT Honeycomb OTLP support

Honeycomb has verified OTLP support using the ADOT collector v0.12.0.

Honeycomb customers can send traces to Honeycomb using the OTLP exporter with the following configuration using a Honeycomb API key and dataset:

exporters:
otlp:
  endpoint: "api.honeycomb.io:443"
  headers:
    "x-honeycomb-team": "{API_KEY}"
    "x-honeycomb-dataset": "{DATASET}"

We have additional information for configuring the Collector to work with Honeycomb too:
https://docs.honeycomb.io/getting-data-in/opentelemetry/otel-collector/

AWS EC2 start_collector failure

I have followed the instruction for running the test cases (which worked more or less locally or on EKS). However, when trying to run on EC2, I am getting following error:

Command to execute:

$ /usr/local/bin/terraform apply -var="aoc_version=v0.11.0" -var "testcase=../testcases/otlp_http_exporter_trace_mock" -var-file="../testcases/otlp_http_exporter_trace_mock/parameters.tfvars"

Also tried providing -var="aoc_image_repo=466880462355.dkr.ecr.us-west-2.amazonaws.com/pmm-test/awscollector" but it did not change anything


null_resource.setup_sample_app_and_mock_server[0] (remote-exec): Creating tmp_mocked_server_1 ... done
null_resource.setup_sample_app_and_mock_server[0] (remote-exec):
null_resource.setup_sample_app_and_mock_server[0]: Creation complete after 1m52s [id=1200557390540071755]
โ•ท
โ”‚ Error: remote-exec provisioner error
โ”‚
โ”‚   with null_resource.start_collector[0],
โ”‚   on main.tf line 277, in resource "null_resource" "start_collector":
โ”‚  277:   provisioner "remote-exec" {
โ”‚
โ”‚ error executing "/tmp/terraform_1264421553.sh": Process exited with status 1

Canary run fails with missing ../../cmd/aotutil/aotutil

module.ec2_setup.null_resource.check_patch[0] (local-exec): Executing: ["/bin/sh" "-c" "\"../../cmd/aotutil/aotutil\" ssm wait-patch \"i-0c69b2d8296bad507\" --ignore-error\n\"../../cmd/aotutil/aotutil\" ssm wait-patch \"i-0c915e3a9560812c9\" --ignore-error\n"]
module.ec2_setup.null_resource.check_patch[0] (local-exec): /bin/sh: ../../cmd/aotutil/aotutil: No such file or directory
module.ec2_setup.null_resource.check_patch[0] (local-exec): /bin/sh: line 1: ../../cmd/aotutil/aotutil: No such file or directory
โ•ท
โ”‚ Error: local-exec provisioner error
โ”‚
โ”‚   with module.ec2_setup.null_resource.check_patch[0],
โ”‚   on ../ec2/main.tf line 133, in resource "null_resource" "check_patch":
โ”‚  133:   provisioner "local-exec" {
โ”‚
โ”‚ Error running command '"../../cmd/aotutil/aotutil" ssm wait-patch "i-0c69b2d8296bad507" --ignore-error
โ”‚ "../../cmd/aotutil/aotutil" ssm wait-patch "i-0c915e3a9560812c9" --ignore-error
โ”‚ ': exit status 127. Output: /bin/sh: ../../cmd/aotutil/aotutil: No such file or directory
โ”‚ /bin/sh: line 1: ../../cmd/aotutil/aotutil: No such file or directory
โ”‚

Spark Sample app generate metrics for all paths

today, the spark sample app generate metrics for any paths, which could fail our e2e test, because there might be some random requests to the sample app endpoint which generates unexpected metrics for validation.

Let's change the sample app to limit the metric generating to specific paths.

[Validator] Add support for type checking

Currently, validator only checks for values of certain data model fields. I think it would be a good idea to check for field's type as well. I think we store expected type of the fields in the expected data template or we can introduce expected type template which stores expected type of data model fields. Probably having this support we can avoid such issues in future.

[framework] Format terraform code with consistent style

Derived from #264 (comment)

Terraform plugin for IntelliJ IDEs can format .tf files, but

  • existing file does not have a consistent style
  • there are different styles

Based on majority of existing files, the current style is

  • no align on properties
  • use # for comment
# install cwagent
resource "null_resource" "install_cwagent" {
  count = var.install_cwagent ? 1 : 0
  # Use the depends_on meta-argument to handle hidden resource dependencies that Terraform can't automatically infer.
  # Explicitly specifying a dependency is only necessary when a resource relies on some other resource's behavior but doesn't access any of that resource's data in its arguments.
  depends_on = [null_resource.start_collector]
  // copy cwagent config to the instance
  provisioner "file" {
    content = data.template_file.cwagent_config[0].rendered
    destination = local.ami_family["soaking_cwagent_config_destination"]

    connection {
      type = local.connection_type
      user = local.login_user
      private_key = local.connection_type == "ssh" ? local.private_key_content: null
      password = local.connection_type == "winrm" ? rsadecrypt(aws_instance.aoc.password_data, local.private_key_content) : null
      host = aws_instance.aoc.public_ip
    }
  }
}

The purposed styles would be

  • align on value (similar to go)
  • use # for comment (because there are too many ####)
resource "null_resource" "install_cwagent" {
  count =      var.install_cwagent ? 1 : 0
  # Use the depends_on meta-argument to handle hidden resource dependencies that Terraform can't automatically infer.
  # Explicitly specifying a dependency is only necessary when a resource relies on some other resource's behavior but doesn't access any of that resource's data in its arguments.
  depends_on = [
    null_resource.start_collector]
  // copy cwagent config to the instance
  provisioner "file" {
    content =     data.template_file.cwagent_config[0].rendered
    destination = local.ami_family["soaking_cwagent_config_destination"]

    connection {
      type =        local.connection_type
      user =        local.login_user
      private_key = local.connection_type == "ssh" ? local.private_key_content: null
      password =    local.connection_type == "winrm" ? rsadecrypt(aws_instance.aoc.password_data, local.private_key_content) : null
      host =        aws_instance.aoc.public_ip
    }
  }
}

Add integration tests for testing security failures in partner exporters connecting to non-AWS backend services

Add integration tests for testing security failures for the following exporters connecting to their respective (non-AWS) backend services specifically testing for fake or missing credentials. Consider dynamic and static service end-points.

Exporters:
dynatraceexporter
datadogexporter
newrelicexporter
sapmexporter
signalfxexporter

Test for:

  • Encryption at-rest and in-transit
  • Authentication including service response
  • Authorization including service response

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.