Grundlegendes zur Integration der Bereitstellung in Azure Monitor-Protokolle
Die Bereitstellung ist mit Azure Monitor-Protokollen und Log Analytics integriert. Mit der Azure-Überwachung (Azure Monitor) können Sie beispielsweise Arbeitsmappen erstellen, die auch als Dashboards bezeichnet werden, Bereitstellungsprotokolle länger als 30 Tage speichern und benutzerdefinierte Abfragen und Warnungen erstellen. In diesem Artikel wird erläutert, wie Bereitstellungsprotokolle in Azure Monitor-Protokolle integriert werden. Weitere Informationen zur allgemeinen Funktionsweise von Bereitstellungsprotokollen finden Sie unter Bereitstellungsprotokolle.
Aktivieren von Bereitstellungsprotokollen
Wenn Sie noch nicht mit Azure Monitor und Log Analytics vertraut sind, arbeiten Sie die folgenden Ressourcen durch, und kehren Sie dann zurück, um mehr über die Integration von Anwendungsbereitstellungsprotokollen in Azure Monitor-Protokolle zu erfahren.
- Azure Monitor – Übersicht
- Konfigurieren eines Log Analytics-Arbeitsbereichs
- Integrieren von Aktivitätsprotokollen in Azure Monitor-Protokolle
So integrieren Sie Bereitstellungsprotokolle in Azure Monitor-Protokolle
Melden Sie sich beim Microsoft Entra Admin Center mindestens mit der Rolle Sicherheitsadministrator an.
Browsen Sie zu Identität>Überwachung & Integrität>Diagnoseeinstellungen.
Wählen Sie die Protokolle aus, die Sie streamen möchten, wählen Sie die Option An Log Analytics-Arbeitsbereich senden aus, und füllen Sie die Felder aus.
Navigieren Sie zu Identity>Überwachung und Integrität>Log Analytics, und beginnen Sie mit der Abfrage der Daten.
Hinweis
Es kann einige Zeit dauern, bis Protokolle nach der ersten Aktivierung der Integration in Log Analytics angezeigt werden. Wenn eine Fehlermeldung angezeigt wird, dass das Abonnement nicht für die Verwendung von microsoft.insights registriert ist, versuchen Sie es nach einigen Minuten erneut.
Grundlegendes zu den Daten
Der zugrunde liegende Datenstrom, der über die Bereitstellung an Protokollanzeigen gesendet wird, ist nahezu identisch. Azure Monitor-Protokolle empfangen fast denselben Datenstrom wie das Microsoft Entra Admin Center und die Microsoft Graph-API. Wie in der folgenden Tabelle aufgeführt, weisen die Protokollfelder nur einige wenige Unterschiede auf. Log Analytics zeigt möglicherweise mehr Ereignisse als die Protokolle im Microsoft Entra Admin Center an. Weitere Informationen zu diesen Feldern finden Sie unter ProvisioningObjectSummary auflisten.
Azure Monitor-Protokolle | Verwalten des Zugriffs auf Azure-Ressourcen mit RBAC und dem Azure-Portal | Azure API |
---|---|---|
errorDescription | reason | resultDescription |
status | resultType | resultType |
activityDateTime | TimeGenerated | TimeGenerated |
Microsoft Entra-Arbeitsmappen
Microsoft Entra-Identitätsarbeitsmappen bieten eine flexible Canvas für die Datenanalyse. Sie ermöglichen außerdem die Erstellung umfassender visueller Berichte im Azure-Portal. Weitere Informationen finden Sie unter Microsoft Entra-Arbeitsmappen.
Die Arbeitsmappen Bereitstellungsanalyse und Erkenntnisse zur Bereitstellung sind zwei der verfügbaren vordefinierten Arbeitsmappen. Stellen Sie zum Anzeigen der Daten sicher, dass alle Filter (timeRange, jobID, appName) ausgefüllt sind. Vergewissern Sie sich außerdem, dass die App bereitgestellt wurde, andernfalls sind keine Daten in den Protokollen enthalten.
Benutzerdefinierte Abfragen
Sie können benutzerdefinierte Abfragen erstellen und die Daten in Ihren Arbeitsmappen anzeigen. Informationen dazu finden Sie unter Erste Schritte mit Protokollabfragen in Azure Monitor und Protokollabfragen in Azure Monitor.
Nachfolgend finden Sie einige Beispiele für die ersten Schritte mit Abfragen von Anwendungsbereitstellungsprotokollen.
Abfragen der Protokolle für einen Benutzer basierend auf der jeweiligen ID im Quellsystem:
AADProvisioningLogs
| extend SourceIdentity = parse_json(SourceIdentity)
| where tostring(SourceIdentity.Id) == "49a4974bb-5011-415d-b9b8-78caa7024f9a"
Zusammenfassen der Anzahl pro Fehlercode:
AADProvisioningLogs
| summarize count() by ErrorCode = ResultSignature
Zusammenfassen der Anzahl der Ereignisse pro Tag nach Aktion:
AADProvisioningLogs
| where TimeGenerated > ago(7d)
| summarize count() by Action, bin(TimeGenerated, 1d)
Erfassen von 100 Ereignissen und Projektschlüsseleigenschaften:
AADProvisioningLogs
| extend SourceIdentity = parse_json(SourceIdentity)
| extend TargetIdentity = parse_json(TargetIdentity)
| extend ServicePrincipal = parse_json(ServicePrincipal)
| where tostring(SourceIdentity.identityType) == "Group"
| project tostring(ServicePrincipal.Id), tostring(ServicePrincipal.Name), ModifiedProperties, JobId, Id, CycleId, ChangeId, Action, SourceIdentity.identityType, SourceIdentity.details, TargetIdentity.identityType, TargetIdentity.details, ProvisioningSteps
| take 100
Rufen Sie Gruppen mit übersprungenen Mitgliedern aufgrund von Problemen bei der Auflösung von Referenzen ab.
AADProvisioningLogs
| where TimeGenerated >= ago(10d)
| where JobId == "Azure2Azure.73f0883f-d67d-4af1-ac8a-45367f8982e0.5ef3be57-f45f-451g-88c4-68a7fda680bb" // Customize by adding a specific app JobId
| extend SourceIdentity = parse_json(SourceIdentity)
| extend ProvisioningSteps = parse_json(ProvisioningSteps)
| where tostring(SourceIdentity.identityType) == "Group"
| where ProvisioningSteps matches regex "UnableToResolveReferenceAttributeValue"
| parse tostring(ProvisioningSteps.[2].description) with "We were unable to assign " userObjectId " as the members of " groupDisplayName "." *
| project groupDisplayName, userObjectId, JobId
| take 100
Fassen Sie die Aktionen nach Anwendungen zusammen.
AADProvisioningLogs
| where TimeGenerated > ago(30d)
| where JobId == "Azure2Azure.73f0883f-d67d-4af1-ac8a-45367f8982e0.5ef3be57-f45f-451g-88c4-68a7fda680bb" // Customize by adding a specific app JobId
| extend ProvisioningSteps = parse_json(ProvisioningSteps)
| extend eventName = tostring(ProvisioningSteps.[-1].name)
| summarize count() by eventName, JobId
| order by JobId asc
| take 5
Identifizieren Sie Spitzen bei bestimmten Vorgängen.
AADProvisioningLogs
| where TimeGenerated > ago(30d)
| where JobId == "scim.73f0883f-d67d-4af1-ac8a-45367f8982e0.5ef3be57-f45f-451g-88c4-68a7fda680bb" // Customize by adding a specific app JobId
| extend ProvisioningSteps = parse_json(ProvisioningSteps)
| extend eventName = tostring(ProvisioningSteps.[-1].name)
| summarize count() by eventName, bin(TimeGenerated, 1d)
| render timechart
Benutzerdefinierte Warnungen
Mit Azure Monitor können Sie benutzerdefinierte Warnungen konfigurieren, damit Sie über wichtige Ereignisse in Verbindung mit der Bereitstellung benachrichtigt werden. So können Sie beispielsweise Warnungen über Spitzen bei Ausfällen oder über Spitzen bei Deaktivierungen oder Löschvorgängen erhalten. Ein weiteres Beispiel ist eine Warnung bei einer fehlenden Bereitstellung, die auf einen möglichen Fehler hinweist.
Weitere Informationen zu Warnungen finden sie unter Erstellen, Anzeigen und Verwalten von Protokollwarnungen mithilfe von Azure Monitor.
Warnung über Spitze bei Ausfällen Ersetzen Sie die jobID durch die Auftrags-ID Ihrer Anwendung.
Möglicherweise ist ein Problem aufgetreten, das dazu führt, dass der Bereitstellungsdienst nicht mehr ausgeführt wird. Verwenden Sie die folgende Warnung, um zu ermitteln, wann während eines bestimmten Zeitintervalls keine Bereitstellungsereignisse auftreten.
Warnung über eine Spitze bei Deaktivierungen oder Löschvorgängen
Beiträge aus der Community
Wir verfolgen bei Abfragen und Dashboards für die Anwendungsbereitstellung einen Open-Source- und communitybasierten Ansatz. Erstellen Sie eine Abfrage, Warnung oder Arbeitsmappe, die für andere nützlich ist, und veröffentlichen Sie sie dann im GitHub-Repository AzureMonitorCommunity. Senden Sie uns eine E-Mail mit dem entsprechenden Link. Wir überprüfen und veröffentlichen Abfragen und Dashboards für den Dienst, sodass auch andere davon profitieren. Wenden Sie sich unter der Adresse provisioningfeedback@microsoft.comdurchführen.