Install Observe Agent on Windows

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 ${OBSERVE_TOKEN} (your instance’s token, such as a1b2c3d4e5f6g7h8i9k0:l1m2n3o4p5q6r7s8t9u0v1w2x3y4z5a6) and ${OBSERVE_COLLECTION_ENDPOINT} (your instance’s collection endpoint, such as https://123456789012.collect.observeinc.com/) on each host. For more information on configuring the agent, see Configuration.

Note

The ${OBSERVE_COLLECTION_ENDPOINT} is composed from https://${OBSERVE_CUSTOMER_ID}.collect.${OBSERVE_INSTANCE}. For example, if you typically login to https://123456789012.observeinc.com, your ${OBSERVE_COLLECTION_ENDPOINT} is https://123456789012.collect.observeinc.com.

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://raw.githubusercontent.com/observeinc/observe-agent/main/scripts/install.ps1" -outfile .\install.ps1; .\install.ps1 -observe_token "${OBSERVE_TOKEN}" -observe_collection_endpoint "${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

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: "${OBSERVE_TOKEN}"

# Target Observe collection url (ex: https://123456789012.collect.observeinc.com/)
observe_url: "${OBSERVE_COLLECTION_ENDPOINT}"

# Debug mode - Sets agent log level to debug
debug: false

self_monitoring:
  enabled: true

host_monitoring:
  enabled: true
  logs: 
    enabled: true
  metrics:
    host: 
      enabled: true
    process:
      enabled: false

# otel_config_overrides:
#   exporters:
#     # This is a net new exporter
#     debug:
#       verbosity: detailed
#       sampling_initial: 5
#       sampling_thereafter: 200
#   service:
#     pipelines:
#       # This will override the existing metrics/host_monitoring pipeline and output to stdout debug instead
#       metrics/host_monitoring_host:
#         receivers: [hostmetrics/host-monitoring-host]
#         processors: [memory_limiter]
#         exporters: [debug]
#       # This is a net new pipeline
#       logs/new-pipeline:
#         receivers: [filelog/host_monitoring]
#         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 up and running on a Windows host, you can configure your application running on the same Windows host to send telemetry data to the Observe Agent using one of the following addresses:

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

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

Uninstall the Observe Agent

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

Upgrade the Observe Agent

Warning

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://raw.githubusercontent.com/observeinc/observe-agent/main/scripts/install.ps1" -outfile .\install.ps1; .\install.ps1 -observe_token "${OBSERVE_TOKEN}" -observe_collection_endpoint "${OBSERVE_COLLECTION_ENDPOINT}"