Quickstart

🖥 Hosts / VMs

🆂 Self-managed Elastic Stack

The quick start for Hosts / VMs with a self-managed Elastic Stack will guide you through setting up the EDOT Collector and EDOT SDKs to collect host metrics, logs and application traces.

  1. Download the EDOT Collector

    Download the EDOT Collector for your operating system, extract the archive and move to the extracted directory.

  2. Configure the EDOT Collector

    Retrieve your Elasticsearch endpoint and API key and replace <ELASTICSEARCH_ENDPOINT> and <ELASTIC_API_KEY> before applying the below command.

    Linux

     ELASTICSEARCH_ENDPOINT=<ELASTICSEARCH_ENDPOINT> && \
     ELASTIC_API_KEY=<ELASTIC_API_KEY> && \
     cp ./otel_samples/logs_metrics_traces.yml ./otel.yml && \
     mkdir -p ./data/otelcol && \
     sed -i "s#\${env:STORAGE_DIR}#${PWD}/data/otelcol#g" ./otel.yml && \
     sed -i "s#\${env:ELASTIC_ENDPOINT}#${ELASTICSEARCH_ENDPOINT}#g" ./otel.yml && \
     sed -i "s#\${env:ELASTIC_API_KEY}#$ELASTIC_API_KEY#g" ./otel.yml
    

    MacOS

     ELASTICSEARCH_ENDPOINT=<ELASTICSEARCH_ENDPOINT> && \
     ELASTIC_API_KEY=<ELASTIC_API_KEY> && \
     cp ./otel_samples/logs_metrics_traces.yml ./otel.yml && \
     mkdir -p ./data/otelcol && \
     sed -i '' "s#\${env:STORAGE_DIR}#${PWD}/data/otelcol#g" ./otel.yml && \
     sed -i '' "s#\${env:ELASTIC_ENDPOINT}#${ELASTICSEARCH_ENDPOINT}#g" ./otel.yml && \
     sed -i '' "s#\${env:ELASTIC_API_KEY}#${ELASTIC_API_KEY}#g" ./otel.yml
    

    Windows

     Remove-Item -Path .\otel.yml -ErrorAction SilentlyContinue
     Copy-Item .\otel_samples\logs_metrics_traces.yml .\otel.yml
     New-Item -ItemType Directory -Force -Path .\data\otelcol | Out-Null
    
     $content = Get-Content .\otel.yml
     $content = $content -replace '\${env:STORAGE_DIR}', "$PWD\data\otelcol"
     $content = $content -replace '\${env:ELASTIC_ENDPOINT}', "<ELASTICSEARCH_ENDPOINT>"
     $content = $content -replace '\${env:ELASTIC_API_KEY}', "<ELASTIC_API_KEY>"
     $content | Set-Content .\otel.yml
    
  3. Run the EDOT Collector

    Execute the following command to run the EDOT Collector.

    The Collector will open the ports 4317 and 4318 to receive application data from locally running OTel SDKs.

    Linux / MacOS

     sudo ./otelcol --config otel.yml
    

    Windows

     .\elastic-agent.exe otel --config otel.yml
    
  4. (Optional) Instrument your applications

    If you would like to collect telemetry from applications running on the host where you installed the EDOT Collector, you need to instrument your target applications according to the setup instructions for corresponding EDOT SDKs:

    Configure your SDKs to send the data to the local EDOT Collector using OTLP/gRPC (http://localhost:4317) or OTLP/HTTP (http://localhost:4318).