AWS Centralized Logging Guide
The key challenge with modern visibility on clouds like AWS is that data originates from various sources across every layer of the application stack, is varied…
Whether you are just starting your observability journey or already are an expert, our courses will help advance your knowledge and practical skills.
Expert insight, best practices and information on everything related to Observability issues, trends and solutions.
Explore our guides on a broad range of observability related topics.
OpenTelemetry is an open-source observability framework that provides a vendor-neutral and language-agnostic way to collect and analyze telemetry data. This tutorial will show you how to integrate OpenTelemetry with Amazon AWS observability Fargate, a container orchestration service that allows you to run and scale containerized applications without managing the underlying infrastructure.
The first step is to create an ECR repository where you will push your containerized application. You can do this by running the following command:
aws ecr create-repository --repository-name <your_repository_name>
Build your containerized application using your preferred containerization tool and then push it to the ECR repository you created in step 1.
# Build the container docker build -t <your_image_name> . # Tag the container docker tag <your_image_name> <your_account_id>.dkr.ecr.<your_region>.amazonaws.com/<your_repository_name>:<your_tag> # Push the container to ECR docker push <your_account_id>.dkr.ecr.<your_region>.amazonaws.com/<your_repository_name>:<your_tag>
The OpenTelemetry Collector is a daemon that can collect and process telemetry data from your applications. To install the collector as a sidecar container in your Fargate task, you will need to create a new task definition that includes both your application container and the collector container.
# Create a new task definition
aws ecs register-task-definition --family <your_task_definition_name> --container-definitions "[{\"name\":\"<your_application_name>\",\"image\":\"<your_account_id>.dkr.ecr.<your_region>.amazonaws.com/<your_repository_name>:<your_tag>\"},{\"name\":\"otel-collector\",\"image\":\"open-telemetry/opentelemetry-collector\",\"environment\":[{\"name\":\"OTEL_EXPORTER_OTLP_ENDPOINT\",\"value\":\"<your_otel_exporter_endpoint>\"}]\"}]"
Now that you have a task definition, you can create a new Fargate cluster and start a task using that definition.
aws ecs create-cluster --cluster-name <your_cluster_name>
aws ecs run-task --cluster <your_cluster_name> --task-definition <your_task_definition_name>
Once the task runs, you can view the telemetry data collected by the OpenTelemetry collector by sending a request to the location where you have exported your OpenTelemetry data.
Remember: Coralogix offers a complete integration with Open Telemetry, for logs, traces, and metrics!
As Serverless architectures grow, so will the observability challenge. By combining tools that solve the cross-cutting observability problem, like OpenTelemetry, and Fargate, we bring ourselves one step closer to an efficient, efficient, battle-tested, and production-ready observability solution for the serverless world.
The key challenge with modern visibility on clouds like AWS is that data originates from various sources across every layer of the application stack, is varied…
AWS OpenSearch is a project based on Elastic’s Elasticsearch and Kibana projects. Amazon created OpenSearch from the last open-source version of ElasticSearch (7.10) and is part…
Tracing is often the last thought in any observability strategy. While engineers prioritize logs and metrics, tracing is truly the hallmark of a mature observability platform,…