Instrumenting a source restarts its underlying service or process. Regardless of whether you use odictl or YAML, the VM Agent restarts each service, process, or container when it applies instrumentation, so expect a brief interruption.The only exception is Go and Java processes running directly on the host (not in a container). These are instrumented in place and are not restarted.
odictl
YAML
1
Launch odictl
odictl
2
Open the Add Source menu
Use Tab to focus on the Sources pane or press o, then press Enter or click + Add Source with your mouse.
Once the source list opens, choose how you want to instrument. Select a single source to review and adjust its
properties before instrumenting, or select multiple sources to instrument them all at once with default settings.
Single source
Multiple sources (defaults)
1
Search for and select a source
Click in the search bar at the top and type the name of the Linux process, and/or press Tab and scroll
through the list of sources. Once your source is highlighted, press Enter.
The identity the VM Agent uses to match this source to the discovered process, service, or container. It is auto-populated at discovery time and is required — it also drives source lookup and log collection, so avoid changing it (contact support if you must).
The OpenTelemetry service.name reported for this source’s telemetry — the service that its spans, metrics, and logs are attributed to in your backend (for example, the service node in a service map). It is auto-populated from Name at discovery time, but you can edit it to report telemetry under a different service name. If left empty, it defaults to Name. This does not change process matching or the individual span (operation) names.
The process type: either systemd for services managed by systemd, process for standalone Linux processes, or docker for docker containers.
This field is auto-populated at discovery time — contact support before changing it.
The programming language of the process as detected by the VM Agent. This field is auto-populated at discovery time — contact support before changing it.
The version of the runtime language as detected by the VM Agent. This field is auto-populated at discovery time — contact support before changing it.
Press Ctrl+S to save and instrument your source.
3
Verify instrumentation
Instrumentation can take a few moments to complete. Once it is applied, the source appears in the Sources list with a green Health status.
1
Select multiple sources
Move through the list with the arrow keys or Tab, and press Space to select each process, service, or
container you want to instrument. Repeat until all the sources you want are selected.
2
Instrument all selected sources
Press Enter to instrument every selected source at once. This flow does not show the properties dialog —
each source is instrumented with its default settings, which is what most deployments want.
3
Verify instrumentation
Instrumentation can take a few moments to complete. Once it is applied, the sources appear in the Sources list with a green Health status.
1
Navigate to the /etc/odigos-vmagent/sources.d folder
cd /etc/odigos-vmagent/sources.d
2
Create source YAML file
Create a YAML file for your source’s configuration using the editor of your choice. The example below uses vi.
sudo vi example.yaml
3
Add the source configuration
Define each service or process you want to instrument using the properties below.
The identity the VM Agent uses to match this source to the discovered process, service, or container. Required, and also used for source lookup and log collection, so it should match the detected workload.
Optional. The OpenTelemetry service.name reported for this source’s telemetry — the service that its spans, metrics, and logs are attributed to in your backend. If omitted, it defaults to name. This does not change process matching or the individual span (operation) names.