HomeBlogGuidesMicrosoft Partner · Charlottesville, VA
Guides

Practical Monitoring for Dynamics 365: Setup and Tools

Monitor Dynamics 365 across Dataverse and F&O with Azure Monitor, Application Insights, and LCS. Align alerting to Microsoft's 99.9% SLA. With sources and KQL.

Dynamics 365 GroupJune 18, 20257 min read← All posts
Practical Monitoring for Dynamics 365: Setup and Tools

TL;DR

  • Start with Microsoft’s built-in tools: Dataverse auditing and analytics, Plug-in trace logs, and Finance & Operations (F&O) Lifecycle Services (LCS) environment monitoring.
  • Add Azure Monitor, Log Analytics, and Application Insights for centralized logging, dashboards, and alerting.
  • Tie SLOs/alerts to Microsoft’s 99.9% financially backed SLA for Dynamics 365 Online (source: Microsoft SLA).
  • Keep telemetry privacy-safe and role-scoped; document owners and runbooks.

If you’re new to the platform, this primer on Microsoft Dynamics 365 gives helpful context. For integration patterns you’ll likely monitor, see our guide to Power Platform integration with ERP systems. If you want hands-on help, explore our services.

What To Monitor

Effective Dynamics 365 monitoring focuses on the customer experience (latency, reliability), platform health (capacity, jobs, plug-ins), integrations (API limits, failures), and security/audit signals. Track a small, clear set of indicators that map to business outcomes, alert on symptoms users feel, and aggregate details in dashboards for investigation and trend analysis.

  • User experience: page load times, command performance, error rates.
  • Platform health: Dataverse capacity, asynchronous jobs, plug-in failures.
  • Integrations: API calls, throttling, queue backlogs, function failures.
  • Security/audit: sign-ins, privilege changes, data export, audit trail.

Built-in Monitoring (Dataverse/Customer Engagement)

For Dataverse and model-driven apps, start in Power Platform Admin Center for environment analytics, enable auditing for data and user actions, and use plug-in trace logs for server-side code. These signals answer most “is the app healthy?” questions without extra infrastructure and create a reliable baseline before adding cloud telemetry.

  • Environment analytics: performance and capacity in Power Platform Admin Center (docs).
  • Dataverse auditing: enable and review audit history for tables, records, and user activity (docs).
  • Plug-in trace log: capture exceptions/traces from plug-ins and custom workflow activities (docs).
  • Service protection API limits: watch for 429s and back off accordingly (docs).
  • Maker troubleshooting: the in-browser Monitor for model-driven apps (docs).

Tip: If multiple solutions share an environment, standardize on a minimum trace level and a single naming scheme for plug-in trace sources to simplify triage.

Finance & Operations Monitoring (LCS)

For F&O apps, use Lifecycle Services (LCS) Environment monitoring for live telemetry, raw log access, and diagnostics. These tools provide request/response timings, SQL and AOS insights, and raw event streams that help isolate slow operations, failures, and resource pressure without leaving the Microsoft-managed boundary.

  • Environment monitoring overview and metrics (docs).
  • View raw logs and download traces for deep analysis (same doc).
  • Commerce-specific Operational Insights for diagnostics (docs).

Establish a routine to export relevant traces from LCS when incidents occur, attach them to the ticket, and summarize findings with the timeline and suspected root cause.

Azure Monitor and Application Insights

Azure Monitor centralizes logs and metrics across Dynamics-adjacent components (Azure Functions, integrations, Commerce SDK components) and any custom telemetry you emit. Use a Log Analytics workspace for queries and dashboards, and Application Insights for application telemetry, sampling, and distributed tracing across your custom services.

  • Azure Monitor overview (docs).
  • Log Analytics and Kusto Query Language (KQL) basics (docs).
  • Alerts on metrics and logs (docs).

Common KQL starters for Application Insights:

// Spike in failed requests by endpoint
requests
| where success == false
| summarize failures = count() by resultCode, url, bin(timestamp, 5m)
| order by failures desc

// Top exception types and messages
exceptions
| summarize hits = count(), sample_message = any(outerMessage) by type
| order by hits desc

// Slow operations over 2s with correlation Ids
requests
| where duration > 2s
| project timestamp, name, url, duration, operation_Id
| order by duration desc

Where to send telemetry:

  • Dataverse/model-driven apps: use built-in Monitor for client diagnostics; emit custom telemetry only from your custom code (e.g., JavaScript, plug-ins via outbound calls, Azure Functions that integrate with Dataverse).
  • F&O/Commerce: wire Application Insights per Microsoft guidance to receive platform and extension telemetry where supported (see docs above).

Alerting That People Act On

Alert only on user-facing symptoms and urgent infrastructure thresholds. Keep severities clear, route to the accountable team, and attach a runbook link. Suppress flapping with proper windows and dynamic thresholds. Every alert should state the impact, next actions, owner, and links to the relevant KQL, dashboard, and incident channel.

Practical patterns:

  • “Checkout error rate > X% for 5 minutes” (Dataverse/Commerce front end).
  • “429 rate on Dataverse Web API above baseline for 10 minutes.”
  • “Queue backlog age > 15 minutes” for integration workers.
  • “No successful orders in 10 minutes” as a high-priority canary.

Security and Access

Treat monitoring data as sensitive. Scope who can view raw telemetry, rotate access when staff change, and avoid logging personal data. Enable Dataverse auditing for user actions, capture security role changes, and retain only what is necessary. Prefer just-in-time elevation for production when investigating incidents.

  • Dataverse audit configuration and review (docs).
  • Application Insights data collection and privacy controls (docs).

In Dataverse, use security roles to control who can review audit history and plug-in trace logs; in Azure, use RBAC on the Log Analytics workspace and limit “Log Analytics Reader” to least privilege.

Operational Dashboards

Dashboards should answer the on-call question “is the user journey healthy right now?” Create a top-level health view (availability, latency, error rate) and drill-downs for Dataverse, integrations, and F&O. Reuse KQL from your alerts, and, where reporting is needed, publish Power BI over Log Analytics.

  • Connect Power BI to Log Analytics (docs).

Suggested panels:

  • User-facing SLOs: availability, P75/P95 latency, error rate.
  • Dataverse health: API 429s, plug-in failures, async job failures.
  • Integrations: message age, dead-letter counts, function failures.
  • F&O/LCS: longest operations, raw log error trends.

Quick Setup Checklist

  • Enable Dataverse auditing; confirm audit entries appear on key tables.
  • Turn on plug-in trace log; standardize trace categories.
  • Review environment analytics for capacity/performance weekly.
  • In LCS, pin Environment monitoring and validate raw log access.
  • Create a Log Analytics workspace and an Application Insights resource.
  • Instrument custom services (Functions, middleware) to App Insights.
  • Write three KQL queries you will use during incidents; save them.
  • Create two actionable alerts; attach owners and runbooks.
  • Build a one-page health dashboard and share with support.
  • Document data handling policies (no PII in telemetry) and access.

References

These are primary Microsoft sources used throughout this guide. They describe the supported monitoring surfaces and configurations for Dynamics 365 and Azure.

FAQ

This section answers common questions teams raise when putting monitoring in place for Dynamics 365 environments. Each answer is short and points to the official guidance where deeper detail is necessary.

Can I send Dataverse platform logs directly to Azure Monitor?

Not natively. Use Power Platform Admin Center analytics for platform metrics, Dataverse auditing for user/data changes, and Plug-in trace logs for server-side code. Emit custom telemetry from your extensions to Application Insights as needed.

What’s the fastest way to diagnose a slow form in a model-driven app?

Use the in-browser Monitor tool for the app session to capture network requests, command timings, and errors, then correlate with plug-in trace logs if server logic is involved. See Microsoft’s Monitor overview linked above.

How should we set alert thresholds?

Start with user-impacting symptoms (e.g., error rate and latency) and use dynamic thresholds where available. Calibrate during a “steady state” week, then review monthly alongside incident postmortems and adjust based on actual noise vs. value.

Is it safe to log user identifiers?

Avoid personal data in telemetry unless you have a lawful basis and controls. Prefer hashed or pseudonymous identifiers and follow Application Insights privacy guidance. Restrict access to raw logs via RBAC and just-in-time elevation.

How do LCS raw logs help during incidents?

They provide time-aligned traces and diagnostics for F&O that can pinpoint long-running operations, failed calls, or contention. Export relevant segments, attach them to the incident, and use them to confirm or rule out hypotheses.

Where can I get help implementing this?

Our team implements monitoring, alerting, and incident runbooks for Dynamics 365 programs. See our services or talk with your Microsoft partner. For selection criteria, this guide may help: How to choose a Microsoft Dynamics 365 partner.


Frequently Asked Questions

What tools are available for monitoring Dynamics 365 performance and health?

Microsoft provides several built-in tools for Dynamics 365 monitoring. I frequently use the Power Platform admin center to check system health and performance metrics. Another tool I rely on is the Dynamics 365 Monitoring and Diagnostics portal. It gives me real-time insights into system performance and helps identify potential issues before they impact users.

How can Application Insights be enabled and utilized for Dynamics 365?

I've found Application Insights to be incredibly useful for monitoring Dynamics 365. To enable it, I navigate to the Power Platform admin center and select the environment I want to monitor. Once enabled, I can track custom events, exceptions, and performance metrics. This helps me pinpoint performance bottlenecks and troubleshoot issues more effectively.

What methods are there to track user activity within Dynamics 365 environments?

I often use the built-in audit logging feature in Dynamics 365 to track user activity. It allows me to monitor changes made to records, user logins, and access to sensitive data. Another method I recommend is setting up user access tracking through Power Automate. This gives me more detailed insights into how users interact with the system.

Can changes within Dynamics 365 be tracked, and how is this achieved?

Yes, changes in Dynamics 365 can be tracked. I typically use the solution history feature to monitor changes made to customizations and configurations. For data changes, I rely on the audit history feature. It allows me to see who made changes to records, when they were made, and what specific fields were modified.

What metrics should be considered for effective Dynamics 365 performance monitoring?

In my experience, key metrics for Dynamics 365 performance include: - Page load times - Query execution times - API response times - Plugin execution times I also keep an eye on system resource usage, such as CPU and memory consumption, to ensure optimal performance.

How can a Dynamics 365 dashboard be optimized for monitoring key business metrics?

To optimize a Dynamics 365 dashboard for monitoring, start by identifying the most critical KPIs for the business. These might include sales pipeline, customer satisfaction scores, or service case resolution times. Then, create custom charts and visualizations to display these metrics clearly. Always ensure the dashboard loads quickly by limiting the number of complex queries and using cached data where possible.


DH

Daniel Harper

Author

Daniel is a senior Microsoft Dynamics 365 consultant with years of hands-on experience implementing ERP and CRM solutions across manufacturing, retail, healthcare, and professional services. He specializes in Business Central implementations, data migrations, and custom integrations using Power Platform and third-party tools.

Dynamics 365MonitoringAzure MonitorApplication InsightsLifecycle ServicesDataverse