Informationen zu den Systemprotokollen für GitHub Enterprise Server
Um Aktivitäten und Ausnahmen auf Ihre GitHub Enterprise Server-Instance nachzuverfolgen, zu überprüfen und Probleme zu beheben, können Sie die Systemprotokolle einsehen. Ihre Instanz speichert die folgenden beiden Arten von Systemprotokollen:
- Nur-Text-Protokolldateien auf dem Datenträger, gespeichert von Syslog oder bestimmten Diensten; und
- Binärprotokolldateien, gespeichert von journald.
Standardmäßig rotiert GitHub Enterprise Server Systemprotokolle automatisch alle 24 Stunden und bewahrt rotierte Protokolle sieben Tage lang auf. Systemprotokolle umfassen Systemereignisse, Anwendungsprotokolle und Git-Ereignisse. Da Protokolldateien häufig anfallen und sehr groß werden können, möchten Sie Protokolleinträge möglicherweise auf einem Host extrahieren und analysieren, der von Ihre GitHub Enterprise Server-Instance getrennt ist.
Personen mit Administrator-SSH-Zugriff auf eine GitHub Enterprise Server Instanz können auf Systemprotokolle zugreifen und diese lesen. Weitere Informationen finden Sie unter Auf die Verwaltungsshell (SSH) zugreifen.
Sie können Systemprotokolle und Überwachungsprotokolle zur Analyse oder längeren Aufbewahrung an ein externes System weiterleiten. Weitere Informationen findest du unter Protokollweiterleitung und Streaming des Überwachungsprotokolls für Ihre Organisation.
Neben der Überprüfung Ihrer Systemprotokolle können Sie die Aktivitäten auf Ihrer Instanz auf andere Weise überwachen. Sie können beispielsweise Überwachungsprotokolle und Pushprotokolle überprüfen oder globale Webhooks konfigurieren. Weitere Informationen finden Sie unter Überwachen von Aktivitäten in deinem Unternehmen.
Hinweis
Die folgenden Listen an Protokollen erheben keinen Anspruch auf Vollständigkeit.
Systemprotokolldateien
GitHub Enterprise Server schreibt mehrere Kategorien von Systemprotokollen im Klartext auf dem Datenträger der Instanz. Personen mit administratorbasiertem SSH-Zugriff auf die Instanz können diese Dateien mithilfe von Linux-Befehlszeilentools wie cat, tail, head, less und more analysieren.
- Protokolldateien für Datenbanken
- Protokolldateien für die GitHub Anwendung
- Protokolldateien für den HTTP-Server
- Protokolldateien für die Verwaltungskonsole
- Protokolldateien für die Instanzkonfiguration
- Protokolldateien für die Suche
- Protokolldateien für Systemdienste
Protokolldateien für Datenbanken
In den folgenden Protokolldateien werden Ereignisse von Datenbankdiensten in Ihrer Instanz aufgezeichnet.
| Pfad | Beschreibung |
|---|---|
/var/log/mysql/mysql.log | Zeichnet Ereignisse im Zusammenhang mit der MySQL-Datenbank der Instanz auf. |
/var/log/mysql/mysql.err | Zeichnet Fehler im Zusammenhang mit der MySQL-Datenbank der Instanz auf. |
/data/user/mssql/log/errorlog | Zeichnet Fehler im Zusammenhang mit der MSSQL-Datenbank der Instanz auf. Weitere Ereignisse finden Sie unter Journalprotokolle für Datenbanken weiter unten in diesem Artikel. |
Protokolldateien für die GitHub Anwendung
In den folgenden Protokolldateien werden Ereignisse aus der GitHub Anwendung in Ihrer Instanz aufgezeichnet.
| Pfad | Beschreibung |
|---|---|
/var/log/github/audit.log | Zeichnet Benutzer-, Repository- und Systemereignisse für Aktivitäten in der GitHub Anwendung auf Ihrer Instanz auf. Sie können Einträge im Protokoll mithilfe des github_audit-Schlüsselworts filtern. |
/var/log/github/exceptions.log | Zeichnet Ausnahmen auf, auf die die GitHub Anwendung trifft. |
/var/log/github/gitauth.log | Zeichnet Git-Authentifizierungsanforderungen mithilfe von HTTPS oder SSH auf. Sämtliche Git-Authentifizierungsanforderungen werden vom babeld-Dienst verarbeitet. |
/var/log/github/production.log | Zeichnet interne Ereignisse für die GitHub Anwendung auf. Für Anfragen an die Website, umfasst die Controller-Aktion, die geantwortet hat. Kann Einträge mit unterschiedlichen Strukturen enthalten, abhängig vom Ursprung des Jobs oder der Anforderung. |
Protokolldateien für den HTTP-Server
In den folgenden Protokolldateien werden Ereignisse vom HTTP-Server der Instanz aufgezeichnet.
| Pfad | Beschreibung |
|---|---|
/var/log/nginx/error.log* | Zeichnet Fehler für Webanforderungen auf. |
/var/log/nginx/gist.log | Zeichnet HTTP-Anforderungen im Zusammenhang mit Gists auf. Weitere Informationen finden Sie unter Gists erstellen. |
/var/log/nginx/gist.error.log | Zeichnet Fehler im Zusammenhang mit HTTP-Anforderungen für Gists auf. |
/var/log/nginx/github.log | Zeichnet HTTP-Anforderungen an die GitHub Anwendung auf. |
/var/log/nginx/github.error.log | Zeichnet Fehler auf, die HTTP-Anforderungen zugeordnet sind. |
/var/log/nginx/pages.log | Zeichnet HTTP-Anfragen auf, die mit GitHub Pages verbunden sind. Weitere Informationen finden Sie unter Was ist GitHub Pages?. |
/var/log/nginx/pages.error.log | Protokolliert Fehler bei HTTP-Anfragen für GitHub Pages. |
Protokolldateien für Verwaltungskonsole
Die folgenden Protokolldateien enthalten Ereignisse aus dem Verwaltungskonsole Ihrer Instanz. Weitere Informationen finden Sie unter Informationen zur Verwaltungskonsole.
| Pfad | Beschreibung |
|---|---|
/var/log/enterprise-manage/audit.log | Protokolliert die Aktivität in der Verwaltungskonsole der Instanz. |
/var/log/enterprise-manage/unicorn.log | Zeichnet HTTP- und HTTPS-Vorgänge auf, die Administratoren in der Verwaltungskonsole Web-UI oder REST-API ausführen. |
Protokolldateien für die Instanzkonfiguration
Die folgenden Protokolldateien enthalten Ereignisse im Zusammenhang mit der Konfiguration Ihrer Instanz.
| Pfad | Beschreibung |
|---|---|
/data/user/common/ghe-config.log | Zeichnet Ereignisse auf, die der neuesten Konfigurationsausführung zugeordnet sind. Wenn eine Konfigurationsausführung fehlschlägt, wird die Ausgabe in das Protokoll beendet. Dieses Protokoll zeichnet auch Informationen zu Migrationen auf, die während des Upgrades der Software einer Instanz ausgeführt werden. Weitere Informationen finden Sie unter Befehlszeilenwerkzeuge. |
/data/user/config-apply/logs/YYYYMMDD/* | Speichert Protokolldateien für vorherige Konfigurationsabläufe. Die Instance speichert die Dateien in einem Verzeichnis, das das Datum widerspiegelt, und jeder Dateiname gibt den Knoten und die ID der Ausführung wieder. |
Protokolldateien für die Suche
Die folgenden Protokolldateien enthalten Ereignisse von Diensten, die Suchfunktionen für Ihre Instanz bereitstellen.
| Pfad | Beschreibung |
|---|---|
/var/log/elasticsearch/github-enterprise.log | Zeichnet Ereignisse auf, die dem Elasticsearch-Dienst zugeordnet sind, der von Ihrer Instanz zum Bereitstellen von Suchdiensten verwendet wird. |
Protokolldateien für Systemdienste
Die folgenden Protokolle enthalten Ereignisse von Systemdiensten auf Ihrer Instanz.
| Pfad | Beschreibung |
|---|---|
/var/log/coredumps.log | Zeichnet Informationen zu Systemprozessen auf, die unerwartet beendet werden. |
/var/log/boot.log | Zeichnet Informationen zum Startvorgang der Instanz auf. |
/var/log/chrony/ | Dieses Verzeichnis enthält Protokolle im Zusammenhang mit der NTP (Network Time Protocol)-Synchronisierung und der Systemuhr der Instanz. Weitere Informationen finden Sie unter Zeitsynchronisierung konfigurieren. |
/var/log/haproxy.log | Zeichnet alle Web- und API-Anforderungen an die Instanz auf. Bei HTTP-Verbindungen enthalten Einträge die URL, die der Client angefordert hat, sowie die HTTP-Methode für die Anforderung. |
/var/log/ssh-console-audit.log | Zeichnet Befehle auf, die Administratoren mit der Verwaltungs-Shell (SSH) ausführen. Weitere Informationen finden Sie unter Auf die Verwaltungsshell (SSH) zugreifen. |
/var/log/mail-replies/metroplex.log | Zeichnet Informationen zu E-Mails auf, die Ihre Instanz empfängt. Weitere Informationen finden Sie unter E-Mail für Benachrichtigungen konfigurieren. |
Systemprotokolle im systemd-Journal
Mehrere GitHub Enterprise Server Dienste, z. B. der babeld Dienst, werden containerisiert.
GitHub Enterprise Server schreibt Systemprotokolle für diese Dienste in das systemd journal in einem Binärformat.
Personen mit administrativem SSH-Zugriff auf die Instanz können diese Protokolle mithilfe des journalctl-Befehls analysieren. Weitere Informationen finden Sie unter journalctl(1) im Linux-Online-Handbuch.
Um Protokolle im systemd-Journal anzuzeigen, führen Sie den folgenden Befehl aus, indem Sie SERVICE-NAME durch einen Dienstnamen aus der folgenden Liste der Protokolle ersetzen. Führen Sie zum Anzeigen von Protokollen aller anderen containerisierten Dienste nomad job status aus und verwenden Sie ID als DIENSTNAMEN.
journalctl -t SERVICE-NAME
Journalprotokolle für die GitHub-Anwendung
Im folgenden Protokoll werden Ereignisse aus der GitHub Anwendung in Ihrer Instanz protokolliert.
| Dienstname | Beschreibung |
|---|---|
github-resqued | Zeichnet Ereignisse im Zusammenhang mit Hintergrundjobs auf. Wenn zum Auftrag eine integrierte oder externe Authentifizierung gehört, enthält dieses Protokoll Informationen zur Anforderung. Wenn die Instanz LDAP-Authentifizierung verwendet und die LDAP-Synchronisierung aktiviert ist, werden Ereignisse für die LDAP-Synchronisierung in diesem Protokoll angezeigt. Weitere Informationen finden Sie unter Verwenden von LDAP. |
github-unicorn | Zeichnet HTTP- und HTTPS-Operationen auf, die Benutzer in der Web-Benutzeroberfläche der Instanz oder über die APIs ausführen. Wenn zum Vorgang eine integrierte oder externe Authentifizierung gehört, enthält dieses Protokoll Informationen zur Anforderung. Wenn die Debug-Protokollierung für die LDAP- oder SAML-Authentifizierung aktiviert ist, werden die Informationen auf Debug-Ebene für authentifizierte Anforderungen in diesem Protokoll angezeigt. Weitere Informationen findest du unter Verwenden von LDAP oder Fehlerbehebung bei der SAML-Authentifizierung. |
Journalprotokolle für Git
Die folgenden Protokolle enthalten Ereignisse im Zusammenhang mit Git-Aktivitäten auf Ihrer Instanz
| Dienstname | Beschreibung |
|---|---|
babeld | Zeichnet Ereignisse für alle Git-Aktivitäten auf der Instanz auf, einschließlich der Authentifizierung für den Zugriff auf das Repository. |
codeload | Zeichnet Ereignisse für Aktivitäten im Zusammenhang mit der Generierung oder dem Heranholen von Codearchiven für Repositorys auf der Instanz auf. |
gpgverify | Zeichnet Ereignisse im Zusammenhang mit der Überprüfung der Commit-Signatur auf. Weitere Informationen finden Sie unter Informationen zur Verifizierung einer Commit-Signatur. |
Journalprotokolle für den Speicher
Die folgenden Protokolle enthalten Ereignisse von Diensten, die Daten auf Ihrer Instanz speichern oder von Ihrer Instanz abrufen.
| Dienstname | Beschreibung |
|---|---|
alambic | Zeichnet Ereignisse im Zusammenhang mit dem Speichern und Abrufen von Dateien auf, wie Git LFS Objekte, Avatar-Bilder, Dateianhänge aus Kommentaren in der Web-UI und Release-Archive. |
Journalprotokolle für Datenbanken
In den folgenden Protokollen sind Ereignisse im Zusammenhang mit Datenbankdiensten in Ihrer Instanz enthalten.
| Dienstname | Beschreibung |
|---|---|
mysql | Zeichnet Ereignisse im Zusammenhang mit der MySQL-Datenbank der Instanz auf. |
mssql | Zeichnet Ereignisse im Zusammenhang mit der MSSQL-Datenbank der Instanz auf. |
Journalprotokolle für Webhooks
Die folgenden Protokolldateien enthalten Ereignisse im Zusammenhang mit Webhooks, die Ihre Instanz sendet.
| Dienstname | Beschreibung |
|---|---|
hookshot-go | Zeichnet Ereignisse für alle Webhook-Aktivitäten auf der Instanz auf, einschließlich ausgelöster Webhooks, Lieferungen und Fehler. |
Info zu Systemprotokollen in Supportbundles
Wenn Sie ein Supportbundle generieren, enthält die Datei Systemprotokolle. Weitere Informationen finden Sie unter Bereitstellen von Daten für GitHub Support.