
What happens when data arrives
Telemetry that arrives at a Log Analytics workspace is stored in tables. The destination table depends on the source and type of data. Common mappings include:
Query the workspace using Kusto Query Language (KQL). See: Kusto query language (KQL) overview

Common KQL examples
Query the Perf table for the Available MBytes counter on a specific computer and render a time chart:AMA (Azure Monitor Agent) is the modern agent and should be used for new deployments. MMA (OMS agent) is deprecated and lacks support for some newer OS versions. For on-premises machines, use Azure Arc to install and manage AMA. If both MMA and AMA are enabled on a host they will both send telemetry (and both will incur ingestion charges).
Demo resources (example)
The demo referenced in this article uses:- A resource group (e.g., created by automation).
- Two VMs (one Windows, one Linux).
- A Web App (App Service).
rgsecops.
Attempting to onboard using MMA (legacy)
The legacy flow installs the Log Analytics (MMA/OMS) agent on a VM and configures it to talk to a workspace. Parts of the portal still use this flow, but MMA does not support all OS releases (e.g., newer Ubuntu versions). When onboarding from the Log Analytics workspace > Virtual Machines (deprecated) blade you may see connection state per VM and a Connect option.




Using AMA (Azure Monitor Agent) and Data Collection Rules (DCR)
AMA uses Data Collection Rules (DCRs) to define what to collect and where to send it. A DCR contains:- Data sources (Windows Event Logs, Performance Counters, Syslog, custom logs, etc.)
- Destinations (Log Analytics workspace, Azure Monitor metrics, etc.)
- Scope (which resources the DCR applies to)

- Choose the platform type (Windows, Linux, or All).
- Add Windows Event Log channels and severity levels (Critical, Error, Warning, etc.).
- Select Performance Counters and sampling rate (e.g., CPU, Memory, Disk).
- For Linux, add Syslog facilities and minimum log levels.
- Add a destination — usually your Log Analytics workspace.




AzureMonitorLinuxAgent alongside any legacy OMS extensions.

Check which agent type is reporting
Use Heartbeat to see agent categories:win-ra-vm—Direct Agent(legacy/MMA)win-ra-vm—Azure Monitor Agent(AMA)linux-ra-vm—Azure Monitor Agent(AMA)
If both MMA and AMA are installed on the same machine, you will see heartbeats from both agents and both can send telemetry. This may double ingestion volume and increase costs. Uninstall or disable the legacy agent when you migrate to AMA.
Syslog and other tables
After enabling Syslog collection in a DCR, messages appear in theSyslog table. Example query showing recent syslog messages:
App Services and diagnostic settings (agent not required)
For Platform as a Service (PaaS) resources such as App Service (Web Apps), you cannot install an agent. Instead, configure Diagnostic settings to send logs and metrics to a Log Analytics workspace. For an App Service:- Open the App Service in the portal.
- Go to Diagnostic settings and create a diagnostic setting.
- Select categories and metrics (HTTP logs, application logs, metrics).
- Send logs to your Log Analytics workspace.
AppServiceHTTPLogs. Visiting the web app (an HTTP GET) produced an entry in that table.
Query example for App Service HTTP logs:
AzureDiagnostics. Filter results by ResourceId when querying AzureDiagnostics.
Final recommendations
- Use AMA and Data Collection Rules for all new environments. They support modern OS versions and flexible collection scopes.
- Use Azure Arc to manage and onboard on-premises or multi-cloud servers to AMA.
- Avoid new deployments with MMA; it is deprecated and will reach end of support.
- Monitor ingestion and costs: if you see duplicate telemetry, verify both MMA and AMA are not installed simultaneously.
- Use the
Heartbeat,Perf,Event,Syslog, and resource-specific tables (e.g.,AppServiceHTTPLogs) to build targeted queries for monitoring and troubleshooting.