Note
Webhooks sind für bestimmte Anwendungsfälle möglicherweise eine gute Alternative zum Überwachungsprotokoll oder API-Abruf. Webhooks sind eine Möglichkeit für GitHub, Ihren Server zu benachrichtigen, wenn bestimmte Ereignisse für ein Repository, eine Organisation oder ein Enterprise auftreten. Im Vergleich zu der API oder dem Durchsuchen des Überwachungsprotokolls können Webhooks effizienter sein, wenn Sie nur erfahren und möglicherweise protokollieren möchten, wann bestimmte Ereignisse in Ihrem Enterprise, Ihrer Organisation oder ihrem Repository auftreten. Weitere Informationen finden Sie unter „Webhooks-Dokumentation“.
Wahren Sie die Compliance und schützen Sie geistiges Eigentum mit Endpunkten, die sich auf das Überwachungsprotokoll beziehen. Weitere Informationen findest du unter REST-API-Endpunkte für Enterprise-Überwachungsprotokolle und REST-API-Endpunkte für Organisationen.
Weitere Informationen zu den spezifischen Ereignissen, auf die Sie über die Überwachungsprotokoll-Endpunkte zugreifen können, finden Sie in den folgenden Artikeln.
- Überwachungsprotokollereignisse für Ihre Enterprise
- Überwachungsprotokollereignisse für deine Organisation
- Sicherheitsprotokollereignisse
Überwachungsprotokolldetails
Im Überwachungsprotokoll werden Ereignisse aufgelistet, die durch Aktivitäten ausgelöst werden, die sich auf dein Unternehmen auswirken. Überwachungsprotokolle für GitHub Enterprise Server werden unbegrenzt beibehalten, es sei denn, eine Unternehmensbesitzerin hat einen anderen Aufbewahrungszeitraum konfiguriert. Siehe „Konfigurieren des Überwachungsprotokolls für dein Unternehmen“.
Standardmäßig werden nur Ereignisse aus den letzten drei Monaten angezeigt. Um ältere Ereignisse anzuzeigen, musst du einen Datumsbereich mit dem created
-Parameter angeben. Weitere Informationen finden Sie unter „Grundlagen der Suchsyntax“.
Zeitstempel und Datumsfelder in der API-Antwort werden in UTC-Epochenmillisekunden gemessen.
Sie können den read:audit_log
-Bereich verwenden, um über die API auf das Überwachungsprotokoll zuzugreifen.
Beispiel 1: Alle Ereignisse in einem Unternehmen, für ein bestimmtes Datum, mit Paginierung
Du kannst seitenbasierte Paginierung verwenden. Weitere Informationen zur Paginierung findest du unter Verwenden der Paginierung in der REST-API.
Die folgende Abfrage sucht nach Überwachungsprotokollereignissen, die am 1. Januar 2022 im Unternehmen avocado-corp
erstellt wurden, und gibt die erste Seite mit maximal 100 Elementen pro Seite mithilfe der Paginierung zurück. Weitere Informationen zur Paginierung findest du unter Verwenden der Paginierung in der REST-API.
curl -H "Authorization: Bearer TOKEN" \
--request GET \
"http(s)://HOSTNAME/api/v3/enterprises/avocado-corp/audit-log?phrase=created:2022-01-01&page=1&per_page=100"
Beispiel 2: Ereignisse bei Pullanforderungen in einem Unternehmen, für ein bestimmtes Datum und einen bestimmten Akteur
Du kannst mehrere Suchbegriffe wie z. B. created
und actor
angeben, indem du sie in deiner formatierten URL mit dem Symbol +
oder dem ASCII-Zeichencode %20
trennst.
Die folgende Abfrage sucht nach Überwachungsprotokollereignissen für Pullanforderungen, bei denen das Ereignis am oder nach dem 1. Januar 2022 im avocado-corp
Unternehmen eingetreten ist und die Aktion vom Benutzer octocat
ausgeführt wurde:
curl -H "Authorization: Bearer TOKEN" \
--request GET \
"http(s)://HOSTNAME/api/v3/enterprises/avocado-corp/audit-log?phrase=action:pull_request+created:>=2022-01-01+actor:octocat"
Beispiel 3: Ereignisse für Git-Aktivitäten in einem Unternehmen, für ein bestimmtes Datum und einen bestimmten Akteur
Sie können in einem Unternehmen nach Git-Ereignissen suchen, z. B. Klonen, Fetchen und Pushing, indem Sie include=git
als Parameter in der URL hinzufügen. Alternativ können Sie auch include=all
verwenden, um sowohl nach Web-Ereignissen als auch nach Git-Ereignissen zu suchen.
Die folgende Abfrage sucht nach Überwachungsprotokollereignissen für Git-Aktivitäten, bei denen das Ereignis nach dem 1. Januar 2024 im avocado-corp
Unternehmen eingetreten ist und die Aktion vom Benutzer octocat
ausgeführt wurde.
curl -H "Authorization: Bearer TOKEN" \
--request GET \
"http(s)://HOSTNAME/api/v3/enterprises/avocado-corp/audit-log?phrase=created:>=2024-01-01+actor:octocat&include=git"