We use https://github.com/DataDog/dd-trace-dotnet/releases/tag/v1.11.0 and, given there is no module to support it, have written one that manages package installation and ensures the service is started.
Unfortunately, the dd-trace-dotnet agent sets up a dependency on the datadog service, such that when puppet runs the datadog agent module crashes out as it is no longer able to manage the service state on windows:
Error: /Stage[main]/Datadog_agent::Windows/Service[datadogagent]: Failed to call refresh: Failed to transition the datadogagent service to the SERVICE_STOPPED state. Detail: Failed to send the SERVICE_CONTROL_STOP signal to the service.
Its current state is SERVICE_RUNNING. Failed with: A stop control has been sent to a service that other running services are dependent on.
Error: /Stage[main]/Datadog_agent::Windows/Service[datadogagent]: Failed to transition the datadogagent service to the SERVICE_STOPPED state. Detail: Failed to send the SERVICE_CONTROL_STOP signal to the service. Its current state is SER
VICE_RUNNING. Failed with: A stop control has been sent to a service that other running services are dependent on.
This appears to be because the service resource in puppet doesn't manage dependant services, and so just gets returned a state it can't deal with.
As it stands, without forking and managing the module myself, I can't see how best to resolve this. There are no built in params to avoid the module managing the agent's service state (so that I could manage it externally with a script).
Has this use case been covered before and I'm missing something?
We use https://github.com/DataDog/dd-trace-dotnet/releases/tag/v1.11.0 and, given there is no module to support it, have written one that manages package installation and ensures the service is started.
Unfortunately, the dd-trace-dotnet agent sets up a dependency on the datadog service, such that when puppet runs the datadog agent module crashes out as it is no longer able to manage the service state on windows:
This appears to be because the service resource in puppet doesn't manage dependant services, and so just gets returned a state it can't deal with.
As it stands, without forking and managing the module myself, I can't see how best to resolve this. There are no built in params to avoid the module managing the agent's service state (so that I could manage it externally with a script).
Has this use case been covered before and I'm missing something?