# Monitoring Windows Services with Elastic Apm

**URL:** <https://discuss.elastic.co/t/monitoring-windows-services-with-elastic-apm/358217>\
**Category:** APM\
**Tags:** elastic-stack-monitoring, agent-explorer\
**Created:** [April 25, 2024, 1:20pm UTC](https://discuss.elastic.co/t/monitoring-windows-services-with-elastic-apm/358217 "2024-04-25T13:20:49Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Ilker\_Demirci](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/ilker_demirci/32/133848_2.png) [@Ilker\_Demirci](https://discuss.elastic.co/u/Ilker_Demirci)\
**Post date:** [April 25, 2024, 1:20pm UTC](https://discuss.elastic.co/t/monitoring-windows-services-with-elastic-apm/358217/1 "2024-04-25T13:20:49Z")

</div>

Hello,

I am trying to monitor Windows services with Elastic Apm using this guide : [Profiler Auto instrumentation | APM .NET Agent Reference [1.x] | Elastic](https://www.elastic.co/guide/en/apm/agent/dotnet/current/setup-auto-instrumentation.html#_windows_services)

After installation and a restart, I can see the service on Apm dashboard but there is no data or transactions.

 ![service_details](https://us1.discourse-cdn.com/elastic/original/3X/f/2/f2f0528bb1f7cb77737eec8bb344bda1485d5a69.jpeg)

I can only monitor cpu and ram metrics through Metrics tab, that's all. Is there an additional step or did i make a mistake? Any help would be appreciated, thanks in advance.

---

<div class="post-metadata">

**Author:** ![stevejgordon](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/stevejgordon/32/80912_2.png) [@stevejgordon](https://discuss.elastic.co/u/stevejgordon)\
**Post date:** [May 3, 2024, 6:52am UTC](https://discuss.elastic.co/t/monitoring-windows-services-with-elastic-apm/358217/2 "2024-05-03T06:52:39Z")

</div>

Hi, @Ilker_Demirci.

Unfortunately, for Windows services, there is no natural logical operation (such as an incoming request) for us to auto-instrument with a transaction. As such, no transactions are started. You will need to manually instrument the code with the [public API](https://www.elastic.co/guide/en/apm/agent/dotnet/current/public-api.html) to manually start transactions around a logic unit-of-work in your service. You will need to add the APM NuGet package to your service in order to do that.
