Azure Database for MySQL Flexible Server: Dedicated diagnostic setting still sends MySqlAuditLogs to AzureDiagnostics

Zafar Shaikh 0 Reputation points
2026-09-11T06:09:38.36+00:00

I am using Azure Database for MySQL Flexible Server and want to send MySqlAuditLogs and MySqlSlowLogs to resource-specific Log Analytics tables instead of the legacy AzureDiagnostics table.

I configured the diagnostic setting as follows:

az monitor diagnostic-settings create \
  --name dblogs \
  --resource "/subscriptions/<subscription-id>/resourceGroups/Network/providers/Microsoft.DBforMySQL/flexibleServers/db" \
  --workspace "/subscriptions/<subscription-id>/resourceGroups/Network/providers/Microsoft.OperationalInsights/workspaces/logws" \
  --export-to-resource-specific true \
  --logs '[{"category":"MySqlSlowLogs","enabled":true},{"category":"MySqlAuditLogs","enabled":true}]'

When I check the diagnostic setting, Azure reports:

{
  "destination": "Dedicated",
  "logs": [
    "MySqlSlowLogs",
    "MySqlAuditLogs"
  ]
}

Specifically:

az monitor diagnostic-settings show \
  --name dblogs \
  --resource "/subscriptions/<subscription-id>/resourceGroups/Network/providers/Microsoft.DBforMySQL/flexibleServers/db" \
  --query "{destination:logAnalyticsDestinationType,workspace:workspaceId,logs:logs[].category}" \
  -o json

returns:

{
  "destination": "Dedicated",
  "logs": [
    "MySqlSlowLogs",
    "MySqlAuditLogs"
  ],
  "workspace": ".../workspaces/logws"
}

However, new MySqlAuditLogs records are still being ingested into the AzureDiagnostics table.

For example, I can query:

AzureDiagnostics
| where Category == "MySqlAuditLogs"
| where _ResourceId contains "db"
| where TimeGenerated > ago(1h)

and receive new records.

At the same time, querying the resource-specific table:

MySqlAuditLogs
| where _ResourceId contains "db"
| where TimeGenerated > ago(1h)

returns no results.

I also noticed that Microsoft's documentation appears to have some conflicting information:

  • The diagnostic setting supports Dedicated / resource-specific mode.
  • There is a MySqlAuditLogs resource-specific table documented in Azure Monitor.
  • However, the Azure Database for MySQL Flexible Server supported logs documentation appears to map MySqlAuditLogs and MySqlSlowLogs to AzureDiagnostics.

Questions

  1. For Azure Database for MySQL Flexible Server, are MySqlAuditLogs and MySqlSlowLogs currently supported in resource-specific Log Analytics tables?
  2. If they are supported, why does setting logAnalyticsDestinationType to Dedicated still result in new records being written to AzureDiagnostics?
  3. Is Dedicated currently ignored for these MySQL diagnostic categories?
  4. Is there a specific API version, Azure region, MySQL Flexible Server version, or diagnostic-settings configuration required to enable the resource-specific tables?
  5. If resource-specific tables are not currently supported for these categories, is there an official Microsoft roadmap or timeline for supporting them?

I am specifically trying to determine whether this is expected behavior, a service limitation, or a configuration/API issue.

Thank you.

Azure Database for MySQL
0 comments No comments

Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.