Install Observe Agent on Windows

Note

These instructions apply to tenants created on or after June 6, 2025. If your tenant was created earlier, follow the legacy guide: Install Observe Agent on Windows [Legacy]. Interested in upgrading to the new experience? Open Docs & Support → Contact Support in the product and let us know.

This page provides instructions for installing the Observe Agent on a Windows system to collect metrics, logs, and application telemetry—including OpenTelemetry traces—and forward them to Observe.

Installation

Use the Add Data portal in the product to get the Observe Agent installed in your environment.

Add Data portal

Install and Start the Observe Agent

Install the observe-agent package via the provided installation PowerShell script. This script needs to be run in a PowerShell terminal that you run as administrator.

Replace the contents of the agent configuration file with the config file below. Replace <YOUR_INGEST_TOKEN> with your instance’s ingest token you create from the Add Data for Windows page (ex: a1b2c3d4e5f6g7h8i9k0:l1m2n3o4p5q6r7s8t9u0v1w2x3y4z5a6) and <YOUR_OBSERVE_COLLECTION_ENDPOINT> with your instance’s collection endpoint (ex: https://123456789012.collect.observeinc.com/) on each host. For more information on configuring the agent, see Configuration.

Note

Some Observe instances may optionally use a name instead of Customer ID; if this is the case for your instance, contact your Observe Data Engineer to discuss implementation. A stem name will work as is, but a DNS redirect name may require client configuration.

[Net.ServicePointManager]::SecurityProtocol = "Tls, Tls11, Tls12, Ssl3"; Invoke-WebRequest -UseBasicParsing "https://github.com/observeinc/observe-agent/releases/latest/download/install.ps1" -outfile .\install.ps1; .\install.ps1 -observe_token "<YOUR_INGEST_TOKEN>" -observe_collection_endpoint "<YOUR_OBSERVE_COLLECTION_ENDPOINT>"

To validate that the agent is installed correctly, you can run the following commands.

Get-Service ObserveAgent
Set-Location "${Env:Programfiles}\Observe\observe-agent"
./observe-agent status

Configure the Observe Agent

Automatic configuration

The easiest way to initialize the agent configuration is to use the observe-agent init-config command as follows:

observe-agent init-config --token <YOUR_INGEST_TOKEN> --observe_url <YOUR_OBSERVE_COLLECTION_ENDPOINT>

This is only recommended for initial configuration. For subsequent changes, see below.

Manual configuration

The installation PowerShell script will automatically start the agent for you. You can find the observe-agent.yaml config file in the ${Env:Programfiles}\Observe\observe-agent directory. For more information on configuring the agent, see Configuration.

# Observe data token (ex: a1b2c3d4e5f6g7h8i9k0:l1m2n3o4p5q6r7s8t9u0v1w2x3y4z5a6)
token: "<YOUR_INGEST_TOKEN>"

# Target Observe collection url (ex: https://123456789012.collect.observeinc.com/)
observe_url: "<YOUR_OBSERVE_COLLECTION_ENDPOINT>"

health_check:
    enabled: true
    endpoint: localhost:13133
    path: /status

forwarding:
    enabled: true
    metrics:
        output_format: otel

internal_telemetry:
    enabled: true
    metrics:
        enabled: true
        host: localhost
        port: 8888
        level: detailed
    logs:
        enabled: true
        level: ${env:OTEL_LOG_LEVEL}

self_monitoring:
    enabled: true

host_monitoring:
    enabled: true
    logs:
        enabled: true
    metrics:
        host:
            enabled: true

# otel_config_overrides:
#   exporters:
#     debug:
#       verbosity: detailed
#       sampling_initial: 5
#       sampling_thereafter: 200
#   service:
#     pipelines:
#       metrics:
#         receivers: [hostmetrics]
#         processors: [memory_limiter]
#         exporters: [debug]

Restart the Observe Agent with the updated configuration

If you made any configuration updates, you can restart the agent and apply the new config with the following command.

Restart-Service ObserveAgent

Configure application instrumentation

Once the Observe Agent is deployed, configure your application instrumentation or set the OTEL_EXPORTER_OTLP_ENDPOINT environment variable to one of the following addresses to send application telemetry including traces to the Observe Agent.

Note

When setting up the endpoint to send traces, make sure you use the path that your OTLP library requires. Some libraries need traces to go to /v1/traces, while others expect them at the root path /.

  • OTLP/HTTP endpoint: http://localhost:4318

  • OTLP/grpc endpoint: http://localhost:4317

Learn more about how to instrument your app

Uninstall the Observe Agent

Stop-Service ObserveAgent
Remove-Item -Recurse "${Env:Programfiles}\Observe"

Upgrade the Observe Agent

Warning

Observe Agent v2.0.0 includes breaking changes. Learn more about these changes in Upgrade to Observe Agent v2.0.0 Observe Agent v1.0.0 includes breaking changes. Learn more about these changes in Upgrade to Observe Agent v1.0.0

To upgrade the Observe Agent, run the installation PowerShell script again. The script will stop the service before installing the new version of the agent and restarting the service.

[Net.ServicePointManager]::SecurityProtocol = "Tls, Tls11, Tls12, Ssl3"; Invoke-WebRequest -UseBasicParsing "https://github.com/observeinc/observe-agent/releases/latest/download/install.ps1" -outfile .\install.ps1; .\install.ps1 -observe_token "<YOUR_INGEST_TOKEN>" -observe_collection_endpoint "<YOUR_OBSERVE_COLLECTION_ENDPOINT>"

Next steps

Use both the Log Explorer and the Metric Explorer to monitor your systems. To analyze your trace data, explore both the Trace Explorer and the Service Explorer