- ログレベル
- ログローテーション
production_json.log
production.log
api_json.log
application.log
(非推奨)application_json.log
integrations_json.log
kubernetes.log
(非推奨)git_json.log
audit_json.log
- Sidekiqログ
gitlab-shell.log
- Gitalyログ
- Puma ログ
repocheck.log
importer.log
exporter.log
features_json.log
ci_resource_groups_json.log
auth.log
auth_json.log
graphql_json.log
migrations.log
mail_room_json.log
(デフォルト)web_hooks.log
- ログの再設定
sidekiq_exporter.log
とweb_exporter.log
database_load_balancing.log
zoekt.log
elasticsearch.log
exceptions_json.log
service_measurement.log
geo.log
update_mirror_service_json.log
llm.log
- レジストリログ
- NGINXログ
- ページのログ
- Mattermostのログ
- Workhorse ログ
- PgBouncerのログ
- PostgreSQLのログ
- Prometheus のログ
- Redisのログ
- アラートマネージャーのログ
- crond ログ
- Grafana のログ
- LogRotate のログ
- GitLab モニターのログ
- GitLab Exporter
- GitLab エージェントサーバー
- Praefect のログ
- バックアップログ
- パフォーマンスバーの統計
- ログの収集
- 相関IDで関連するログエントリを検索
ログシステム
GitLabにはすべてが記録される高度なログシステムがあり、様々なシステムログファイルを使ってインスタンスを分析することができます。ログシステムは監査イベントに似ています。
システムログファイルは通常、標準的なログファイル形式のプレーンテキストです。このガイドでは、これらのシステムログファイルの読み方と使い方について説明します。
ログシステムとログの使用についての詳細をお読みください:
- ログの保存期間の調整、ログの転送、ログの JSON からプレーンテキストへの切り替えなど、Linux パッケージインストールにおけるログのカスタマイズ。
- JSON ログを解析して分析する方法。
ログレベル
各ログ メッセージには、その重要性と冗長性を示すログ レベルが割り当てられます。各ロガーには、割り当てられた最小ログ レベルがあります。ロガーは、そのログ レベルが最小ログ レベルと等しいか、それ以上の場合にのみログ メッセージを発行します。
以下のログレベルがサポートされています:
レベル | 名前 |
---|---|
0 | DEBUG |
1 | INFO |
2 | WARN |
3 | ERROR |
4 | FATAL |
5 | UNKNOWN |
GitLab ロガーはデフォルトでDEBUG
に設定されているため、すべてのログメッセージを出力します。
デフォルトのログレベルを上書き
GITLAB_LOG_LEVEL
環境変数を使って、GitLab ロガーの最小ログレベルを上書きすることができます。有効な値は0
から5
の値か、ログレベルの名前です。
使用例:
GITLAB_LOG_LEVEL=info
サービスによっては、この設定の影響を受けない他のログレベルが設定されています。これらのサービスには、ログレベルを上書きする独自の環境変数があります。例えば
サービス | ログレベル | 環境変数 |
---|---|---|
GitLab API | INFO | |
GitLabクリーンアップ | INFO | DEBUG |
GitLabドクター | INFO | VERBOSE |
GitLabエクスポート | INFO | EXPORT_DEBUG |
GitLab Geo | INFO | |
GitLab インポート | INFO | IMPORT_DEBUG |
GitLab QAランタイム | INFO | QA_LOG_LEVEL |
Google API | INFO | |
ラックのタイムアウト | ERROR | |
Sidekiq(サーバー) | INFO | |
除雪車トラッカー | FATAL | |
gRPCクライアント(Gitaly) | WARN | GRPC_LOG_LEVEL |
LLM | INFO | LLM_DEBUG |
ログローテーション
指定されたサービスのログは、以下の方法で管理され、ローテーションされます:
logrotate
-
svlogd
(runit
のサービスログデーモン) -
logrotate
とsvlogd
- または全く
以下の表は、含まれるサービスのログの管理とローテーションを担当するものについての情報を含んでいます。svlogd
](https://docs.gitlab.com/omnibus/settings/logs.html#runit-logs) によって管理されるログ[はcurrent
というファイルに書き込まれます。GitLabに組み込まれたlogrotate
サービスは、runit
によって取得されたログ以外のすべてのログを管理します。
ログの種類 | logrotateで管理 | svlogd/runitによる管理 |
---|---|---|
アラートマネージャのログ | {点線円}いいえ | {チェックサークル}はい |
ログ | {点線円}いいえ | {チェックサークル}はい |
Gitaly | {チェックサークル}はい | {チェックサークル}はい |
Linux パッケージインストール用 GitLab Exporter | {点線円}いいえ | {チェックサークル}はい |
GitLab Pagesのログ | {チェックサークル}はい | {チェックサークル}はい |
GitLab Rails | {チェックサークル}はい | {点線円}いいえ |
GitLab Shell ログ | {チェックサークル}はい | {点線円}いいえ |
Grafanaログ | {点線円}いいえ | {チェックサークル}はい |
ログの回転 | {点線円}いいえ | {チェックサークル}はい |
メールルーム | {チェックサークル}はい | {チェックサークル}はい |
NGINX | {チェックサークル}はい | {チェックサークル}はい |
PgBouncerのログ | {点線円}いいえ | {チェックサークル}はい |
PostgreSQLログ | {点線円}いいえ | {チェックサークル}はい |
Praefectログ | {点線丸印}あり | {チェックサークル}はい |
プロメテウスのログ | {点線円}いいえ | {チェックサークル}はい |
Puma | {チェックサークル}はい | {チェックサークル}はい |
Redisのログ | {点線円}いいえ | {チェックサークル}はい |
レジストリログ | {点線円}いいえ | {チェックサークル}はい |
Workhorse ログ | {チェックサークル}はい | {チェックサークル}はい |
production_json.log
このファイルは
-
/var/log/gitlab/gitlab-rails/production_json.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/production_json.log
セルフコンパイルインストールの場合。
Logrageのおかげで、GitLabから受け取ったRailsコントローラのリクエストの構造化ログが含まれています。APIからのリクエストはapi_json.log
の別のファイルに記録されます。
各行には Elasticsearch や Splunk などのサービスで取り込める JSON が含まれています。見やすくするために、例に改行を加えました:
{
"method":"GET",
"path":"/gitlab/gitlab-foss/issues/1234",
"format":"html",
"controller":"Projects::IssuesController",
"action":"show",
"status":200,
"time":"2017-08-08T20:15:54.821Z",
"params":[{"key":"param_key","value":"param_value"}],
"remote_ip":"18.245.0.1",
"user_id":1,
"username":"admin",
"queue_duration_s":0.0,
"gitaly_calls":16,
"gitaly_duration_s":0.16,
"redis_calls":115,
"redis_duration_s":0.13,
"redis_read_bytes":1507378,
"redis_write_bytes":2920,
"correlation_id":"O1SdybnnIq7",
"cpu_s":17.50,
"db_duration_s":0.08,
"view_duration_s":2.39,
"duration_s":20.54,
"pid": 81836,
"worker_id":"puma_0"
}
この例は、特定のイシューに対する GET リクエストです。各行には、秒単位のパフォーマンスデータも含まれています:
-
duration_s
:リクエストの取得にかかった合計時間 -
queue_duration_s
:GitLab Workhorse内でリクエストがキューに入れられた合計時間 -
view_duration_s
:Rails ビューの内部での合計時間 -
db_duration_s
:PostgreSQLからのデータ取得にかかる合計時間 -
cpu_s
:CPUの総使用時間 -
gitaly_duration_s
:Gitaly呼び出しによる合計時間 -
gitaly_calls
:Gitalyとの通話の合計回数 -
redis_calls
:Redisへのコール総数 -
redis_cross_slot_calls
:Redisへのクロススロットコール総数 -
redis_allowed_cross_slot_calls
:Redisに対して許可されたクロススロットコールの総数。 -
redis_duration_s
:Redisからデータを取得するための合計時間 -
redis_read_bytes
:Redisから読み込んだ総バイト数 -
redis_write_bytes
:Redisへの総書き込みバイト数 -
redis_<instance>_calls
:Redisインスタンスへのコール総数 -
redis_<instance>_cross_slot_calls
:Redisインスタンスへのクロススロットコール総数 -
redis_<instance>_allowed_cross_slot_calls
:Redisインスタンスに対して許可されたクロススロットコールの総数。 -
redis_<instance>_duration_s
:Redisインスタンスからデータを取得するための合計時間 -
redis_<instance>_read_bytes
:Redisインスタンスから読み込んだ総バイト数 -
redis_<instance>_write_bytes
:Redisインスタンスへの総書き込みバイト数 -
pid
:ワーカーの Linux プロセス ID (ワーカーが再起動すると変更されます) -
worker_id
:ワーカーの論理 ID (ワーカーが再起動しても変わりません)
HTTP トランスポートを使ったユーザークローンとフェッチのアクティビティはaction: git_upload_pack
としてログに表示されます。
さらに、ログには発信元IPアドレス(remote_ip
)、ユーザーID(user_id
)、ユーザー名(username
)が含まれます。
一部のエンドポイント(/search
など)は、高度な検索を使用している場合、Elasticsearch にリクエストを行うことがあります。これらはさらにelasticsearch_calls
とelasticsearch_call_duration_s
のログを記録します:
-
elasticsearch_calls
:Elasticsearch への総コール数 -
elasticsearch_duration_s
:Elasticsearchの呼び出しにかかった時間の合計 -
elasticsearch_timed_out_count
:Elasticsearchの呼び出しがタイムアウトし、部分的な結果が返された回数の合計
ActionCableの接続イベントとサブスクリプションイベントもこのファイルに記録され、前述のフォーマットに従います。method
,path
,format
フィールドは適用されず、常に空です。ActionCable 接続またはチャネルクラスは、controller
として使用されます。
{
"method":null,
"path":null,
"format":null,
"controller":"IssuesChannel",
"action":"subscribe",
"status":200,
"time":"2020-05-14T19:46:22.008Z",
"params":[{"key":"project_path","value":"gitlab/gitlab-foss"},{"key":"iid","value":"1"}],
"remote_ip":"127.0.0.1",
"user_id":1,
"username":"admin",
"ua":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:76.0) Gecko/20100101 Firefox/76.0",
"correlation_id":"jSOIEynHCUa",
"duration_s":0.32566
}
class
,message
,backtrace
と共にexception
フィールドが含まれます。以前のバージョンでは、exception.class
とexception.message
の代わりにerror
フィールドが含まれていました。例えば{
"method": "GET",
"path": "/admin",
"format": "html",
"controller": "Admin::DashboardController",
"action": "index",
"status": 500,
"time": "2019-11-14T13:12:46.156Z",
"params": [],
"remote_ip": "127.0.0.1",
"user_id": 1,
"username": "root",
"ua": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10.14; rv:70.0) Gecko/20100101 Firefox/70.0",
"queue_duration": 274.35,
"correlation_id": "KjDVUhNvvV3",
"queue_duration_s":0.0,
"gitaly_calls":16,
"gitaly_duration_s":0.16,
"redis_calls":115,
"redis_duration_s":0.13,
"correlation_id":"O1SdybnnIq7",
"cpu_s":17.50,
"db_duration_s":0.08,
"view_duration_s":2.39,
"duration_s":20.54,
"pid": 81836,
"worker_id": "puma_0",
"exception.class": "NameError",
"exception.message": "undefined local variable or method `adsf' for #<Admin::DashboardController:0x00007ff3c9648588>",
"exception.backtrace": [
"app/controllers/admin/dashboard_controller.rb:11:in `index'",
"ee/app/controllers/ee/admin/dashboard_controller.rb:14:in `index'",
"ee/lib/gitlab/ip_address_state.rb:10:in `with'",
"ee/app/controllers/ee/application_controller.rb:43:in `set_current_ip_address'",
"lib/gitlab/session.rb:11:in `with_session'",
"app/controllers/application_controller.rb:450:in `set_session_storage'",
"app/controllers/application_controller.rb:444:in `set_locale'",
"ee/lib/gitlab/jira/middleware.rb:19:in `call'"
]
}
production.log
このファイルは
-
/var/log/gitlab/gitlab-rails/production.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/production.log
セルフコンパイルインストールの場合。
実行されたすべてのリクエストに関する情報が含まれています。リクエストの URL やタイプ、IP アドレス、特定のリクエストに関連するコードのパーツを見ることができます。また、実行されたすべての SQL リクエストと、それぞれにかかった時間もわかります。この作業は、GitLab の貢献者や開発者にとってはより便利なものです。バグをレポーターとして報告する際には、このログファイルの一部を使ってください。たとえば
Started GET "/gitlabhq/yaml_db/tree/master" for 168.111.56.1 at 2015-02-12 19:34:53 +0200
Processing by Projects::TreeController#show as HTML
Parameters: {"project_id"=>"gitlabhq/yaml_db", "id"=>"master"}
... [CUT OUT]
Namespaces"."created_at" DESC, "namespaces"."id" DESC LIMIT 1 [["id", 26]]
CACHE (0.0ms) SELECT "members".* FROM "members" WHERE "members"."source_type" = 'Project' AND "members"."type" IN ('ProjectMember') AND "members"."source_id" = $1 AND "members"."source_type" = $2 AND "members"."user_id" = 1 ORDER BY "members"."created_at" DESC, "members"."id" DESC LIMIT 1 [["source_id", 18], ["source_type", "Project"]]
CACHE (0.0ms) SELECT "members".* FROM "members" WHERE "members"."source_type" = 'Project' AND "members".
(1.4ms) SELECT COUNT(*) FROM "merge_requests" WHERE "merge_requests"."target_project_id" = $1 AND ("merge_requests"."state" IN ('opened','reopened')) [["target_project_id", 18]]
Rendered layouts/nav/_project.html.haml (28.0ms)
Rendered layouts/_collapse_button.html.haml (0.2ms)
Rendered layouts/_flash.html.haml (0.1ms)
Rendered layouts/_page.html.haml (32.9ms)
Completed 200 OK in 166ms (Views: 117.4ms | ActiveRecord: 27.2ms)
この例では、サーバーは IP168.111.56.1
から URL/gitlabhq/yaml_db/tree/master
の HTTP リクエストを2015-02-12 19:34:53 +0200
で処理しました。このリクエストはProjects::TreeController
で処理されました。
api_json.log
このファイルは
-
/var/log/gitlab/gitlab-rails/api_json.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/api_json.log
セルフコンパイルインストールの場合。
APIに直接送られたリクエストを見るのに役立ちます。例えば
{
"time":"2018-10-29T12:49:42.123Z",
"severity":"INFO",
"duration":709.08,
"db":14.59,
"view":694.49,
"status":200,
"method":"GET",
"path":"/api/v4/projects",
"params":[{"key":"action","value":"git-upload-pack"},{"key":"changes","value":"_any"},{"key":"key_id","value":"secret"},{"key":"secret_token","value":"[FILTERED]"}],
"host":"localhost",
"remote_ip":"::1",
"ua":"Ruby",
"route":"/api/:version/projects",
"user_id":1,
"username":"root",
"queue_duration":100.31,
"gitaly_calls":30,
"gitaly_duration":5.36,
"pid": 81836,
"worker_id": "puma_0",
...
}
このエントリは、関連する SSH キーがgit fetch
あるいはgit clone
を使って該当のプロジェクトをダウンロードできるかどうかを調べるためにアクセスされた内部エンドポイントを示しています:
-
duration
:リクエストを取得するのにかかった時間(ミリ秒) -
queue_duration
:GitLab Workhorse内でリクエストがキューに入れられた合計時間(ミリ秒 -
method
:リクエストに使われた HTTP メソッド -
path
:クエリの相対パス。 -
params
:クエリ文字列または HTTP ボディで渡されるキーと値のペア (パスワードやトークンなどの機密性の高いパラメータはフィルタリングされます) -
ua
:リクエスト元のユーザーエージェント。
Grape Logging
v1.8.4 以降、view_duration_s
はduration_s - db_duration_s
によって計算されます。そのため、](https://github.com/aserafin/grape_logging) はシリアライズ処理だけでなく、Redis での読み書き処理や外部 HTTP など、複数の異なる要因によって影響を受ける可能性があります。
application.log
(非推奨)
GitLab 15.10 で非推奨。
このファイルは
-
/var/log/gitlab/gitlab-rails/application.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/application.log
セルフコンパイルインストールの場合。
application_json.log
のログの構造化されていないバージョンが含まれています:
October 06, 2014 11:56: User "Administrator" (admin@example.com) was created
October 06, 2014 11:56: Documentcloud created a new project "Documentcloud / Underscore"
October 06, 2014 11:56: Gitlab Org created a new project "Gitlab Org / Gitlab Ce"
October 07, 2014 11:25: User "Claudie Hodkiewicz" (nasir_stehr@olson.co.uk) was removed
October 07, 2014 11:25: Project "project133" was removed
application_json.log
GitLab 12.7から導入されました。
このファイルは
-
/var/log/gitlab/gitlab-rails/application_json.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/application_json.log
セルフコンパイルインストールの場合。
ユーザーの作成やプロジェクトの削除など、インスタンスで起きているイベントを発見するのに役立ちます。例えば
{
"severity":"INFO",
"time":"2020-01-14T13:35:15.466Z",
"correlation_id":"3823a1550b64417f9c9ed8ee0f48087e",
"message":"User \"Administrator\" (admin@example.com) was created"
}
{
"severity":"INFO",
"time":"2020-01-14T13:35:15.466Z",
"correlation_id":"78e3df10c9a18745243d524540bd5be4",
"message":"Project \"project133\" was removed"
}
integrations_json.log
このファイルは
-
/var/log/gitlab/gitlab-rails/integrations_json.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/integrations_json.log
セルフコンパイルインストールの場合。
Jira、Asana、irker サービスなどのインテグレーションアクティビティに関する情報がコンテナとして格納されています。この例のように JSON フォーマットを使用します:
{
"severity":"ERROR",
"time":"2018-09-06T14:56:20.439Z",
"service_class":"Integrations::Jira",
"project_id":8,
"project_path":"h5bp/html5-boilerplate",
"message":"Error sending message",
"client_url":"http://jira.gitlap.com:8080",
"error":"execution expired"
}
{
"severity":"INFO",
"time":"2018-09-06T17:15:16.365Z",
"service_class":"Integrations::Jira",
"project_id":3,
"project_path":"namespace2/project2",
"message":"Successfully posted",
"client_url":"http://jira.example.com"
}
kubernetes.log
(非推奨)
GitLab 14.5 で非推奨。
このファイルは
-
/var/log/gitlab/gitlab-rails/kubernetes.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/kubernetes.log
セルフコンパイルインストールの場合。
接続エラーなど、証明書ベースのクラスターに関連する情報をログに記録します。各行には Elasticsearch や Splunk のようなサービスで取り込める JSON が含まれています。
git_json.log
このファイルは
-
/var/log/gitlab/gitlab-rails/git_json.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/git_json.log
セルフコンパイルインストールの場合。
GitLab バージョン 12.2 以降、このファイルはgithost.log
からgit_json.log
にリネームされ、JSON フォーマットで保存されるようになりました。
GitLabはGitリポジトリとやりとりしなければなりませんが、まれに何かがうまくいかないことがあります。その場合、何が起こったのかを正確に知る必要があります。このログファイルには、GitLabからGitリポジトリへのすべての失敗したリクエストがコンテナされています。ほとんどの場合、このファイルは開発者のみに有用です。例えば
{
"severity":"ERROR",
"time":"2019-07-19T22:16:12.528Z",
"correlation_id":"FeGxww5Hj64",
"message":"Command failed [1]: /usr/bin/git --git-dir=/Users/vsizov/gitlab-development-kit/gitlab/tmp/tests/gitlab-satellites/group184/gitlabhq/.git --work-tree=/Users/vsizov/gitlab-development-kit/gitlab/tmp/tests/gitlab-satellites/group184/gitlabhq merge --no-ff -mMerge branch 'feature_conflict' into 'feature' source/feature_conflict\n\nerror: failed to push some refs to '/Users/vsizov/gitlab-development-kit/repositories/gitlabhq/gitlab_git.git'"
}
audit_json.log
このファイルは
-
/var/log/gitlab/gitlab-rails/audit_json.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/audit_json.log
セルフコンパイルインストールの場合。
グループやプロジェクトの設定やメンバーシップ (target_details
) の変更は、このファイルに記録されます。例えば
{
"severity":"INFO",
"time":"2018-10-17T17:38:22.523Z",
"author_id":3,
"entity_id":2,
"entity_type":"Project",
"change":"visibility",
"from":"Private",
"to":"Public",
"author_name":"John Doe4",
"target_id":2,
"target_type":"Project",
"target_details":"namespace2/project2"
}
Sidekiqログ
Linuxパッケージインストールの場合、Sidekiqログの一部は/var/log/gitlab/sidekiq/current
、以下のようになります。
sidekiq.log
GitLab16.0以降では、Helmチャートインストールのデフォルトのログフォーマットが
text
からjson
に変更されました。
このファイルは
-
/var/log/gitlab/sidekiq/current
Linux パッケージインストール時。 -
/home/git/gitlab/log/sidekiq.log
セルフコンパイルインストールの場合。
GitLabは長時間かかるタスクの処理にバックグラウンドジョブを使用します。これらのジョブの処理に関するすべての情報はこのファイルに書き込まれます。例えば
{
"severity":"INFO",
"time":"2018-04-03T22:57:22.071Z",
"queue":"cronjob:update_all_mirrors",
"args":[],
"class":"UpdateAllMirrorsWorker",
"retry":false,
"queue_namespace":"cronjob",
"jid":"06aeaa3b0aadacf9981f368e",
"created_at":"2018-04-03T22:57:21.930Z",
"enqueued_at":"2018-04-03T22:57:21.931Z",
"pid":10077,
"worker_id":"sidekiq_0",
"message":"UpdateAllMirrorsWorker JID-06aeaa3b0aadacf9981f368e: done: 0.139 sec",
"job_status":"done",
"duration":0.139,
"completed_at":"2018-04-03T22:57:22.071Z",
"db_duration":0.05,
"db_duration_s":0.0005,
"gitaly_duration":0,
"gitaly_calls":0
}
JSONログの代わりに、Sidekiq用にテキストログを生成することもできます。たとえば
2023-05-16T16:08:55.272Z pid=82525 tid=23rl INFO: Initializing websocket
2023-05-16T16:08:55.279Z pid=82525 tid=23rl INFO: Booted Rails 6.1.7.2 application in production environment
2023-05-16T16:08:55.279Z pid=82525 tid=23rl INFO: Running in ruby 3.0.5p211 (2022-11-24 revision ba5cf0f7c5) [arm64-darwin22]
2023-05-16T16:08:55.279Z pid=82525 tid=23rl INFO: See LICENSE and the LGPL-3.0 for licensing details.
2023-05-16T16:08:55.279Z pid=82525 tid=23rl INFO: Upgrade to Sidekiq Pro for more features and support: https://sidekiq.org
2023-05-16T16:08:55.286Z pid=82525 tid=7p4t INFO: Cleaning working queues
2023-05-16T16:09:06.043Z pid=82525 tid=7p7d class=ScheduleMergeRequestCleanupRefsWorker jid=efcc73f169c09a514b06da3f INFO: start
2023-05-16T16:09:06.050Z pid=82525 tid=7p7d class=ScheduleMergeRequestCleanupRefsWorker jid=efcc73f169c09a514b06da3f INFO: arguments: []
2023-05-16T16:09:06.065Z pid=82525 tid=7p81 class=UserStatusCleanup::BatchWorker jid=e279aa6409ac33031a314822 INFO: start
2023-05-16T16:09:06.066Z pid=82525 tid=7p81 class=UserStatusCleanup::BatchWorker jid=e279aa6409ac33031a314822 INFO: arguments: []
Linuxパッケージインストールの場合、設定オプションを追加します:
sidekiq['log_format'] = 'text'
セルフコンパイル・インストールの場合は、gitlab.yml
を編集し、Sidekiqlog_format
設定オプションを設定します:
## Sidekiq
sidekiq:
log_format: text
sidekiq_client.log
GitLab 12.9で導入されました。
このファイルは
-
/var/log/gitlab/gitlab-rails/sidekiq_client.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/sidekiq_client.log
セルフコンパイルインストールの場合。
このファイルには、Sidekiqが処理を開始する前、たとえばキューに入れられる前のジョブに関するログ情報が含まれています。
このログファイルは、sidekiq.log
と同じ構造に従っているため、前述のようにSidekiq用に設定した場合はJSONとして構造化されます。
gitlab-shell.log
GitLab ShellはGitLabでGitコマンドの実行に使用され、GitリポジトリへのSSHアクセスを提供します。
git-{upload-pack,receive-pack}
リクエストを含む情報は/var/log/gitlab/gitlab-shell/gitlab-shell.log
にあります。GitalyからのGitLab Shellへのフックに関する情報は、/var/log/gitlab/gitaly/current
にあります。
/var/log/gitlab/gitlab-shell/gitlab-shell.log
のログエントリー例 :
{
"duration_ms": 74.104,
"level": "info",
"method": "POST",
"msg": "Finished HTTP request",
"time": "2020-04-17T20:28:46Z",
"url": "http://127.0.0.1:8080/api/v4/internal/allowed"
}
{
"command": "git-upload-pack",
"git_protocol": "",
"gl_project_path": "root/example",
"gl_repository": "project-1",
"level": "info",
"msg": "executing git command",
"time": "2020-04-17T20:28:46Z",
"user_id": "user-1",
"username": "root"
}
/var/log/gitlab/gitaly/current
のログエントリー例 :
{
"method": "POST",
"url": "http://127.0.0.1:8080/api/v4/internal/allowed",
"duration": 0.058012959,
"gitaly_embedded": true,
"pid": 16636,
"level": "info",
"msg": "finished HTTP request",
"time": "2020-04-17T20:29:08+00:00"
}
{
"method": "POST",
"url": "http://127.0.0.1:8080/api/v4/internal/pre_receive",
"duration": 0.031022552,
"gitaly_embedded": true,
"pid": 16636,
"level": "info",
"msg": "finished HTTP request",
"time": "2020-04-17T20:29:08+00:00"
}
Gitalyログ
このファイルは/var/log/gitlab/gitaly/current
にあり、runitによって生成されます。runit
はLinuxパッケージに同梱されており、その目的についての簡単な説明はLinuxパッケージのドキュメントにあります。ログファイルはローテーションされ、Unixタイムスタンプ形式でリネームされ、gzip
-圧縮されます(@1584057562.s
のように)。
grpc.log
このファイルは Linux パッケージのインストールでは/var/log/gitlab/gitlab-rails/grpc.log
にあります。Gitalyによって使用されるネイティブgRPCロギング。
gitaly_hooks.log
このファイルは/var/log/gitlab/gitaly/gitaly_hooks.log
にあり、gitaly-hooks
コマンドによって生成されます。また、GitLab APIからのレスポンスの処理中に受け取った失敗に関する記録も含まれています。
Puma ログ
puma_stdout.log
このファイルは
-
/var/log/gitlab/puma/puma_stdout.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/puma_stdout.log
セルフコンパイルインストールの場合。
puma_stderr.log
このファイルは
-
/var/log/gitlab/puma/puma_stderr.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/puma_stderr.log
セルフコンパイルインストールの場合。
repocheck.log
このファイルは
-
/var/log/gitlab/gitlab-rails/repocheck.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/repocheck.log
セルフコンパイルインストールの場合。
プロジェクトでリポジトリチェックが実行されるたびに情報を記録します。
importer.log
このファイルは
-
/var/log/gitlab/gitlab-rails/importer.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/importer.log
セルフコンパイルインストールの場合。
このファイルはプロジェクトのインポートとマイグレーションの進捗を記録します。
exporter.log
GitLab 13.1 で導入されました。
このファイルは
-
/var/log/gitlab/gitlab-rails/exporter.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/exporter.log
セルフコンパイルインストールの場合。
エクスポート処理の進行状況をログに記録します。
features_json.log
GitLab 13.7 で導入されました。
このファイルは
-
/var/log/gitlab/gitlab-rails/features_json.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/features_json.log
セルフコンパイルインストールの場合。
GitLabの開発における機能フラグからの変更イベントはこのファイルに記録されます。例えば
{"severity":"INFO","time":"2020-11-24T02:30:59.860Z","correlation_id":null,"key":"cd_auto_rollback","action":"enable","extra.thing":"true"}
{"severity":"INFO","time":"2020-11-24T02:31:29.108Z","correlation_id":null,"key":"cd_auto_rollback","action":"enable","extra.thing":"true"}
{"severity":"INFO","time":"2020-11-24T02:31:29.129Z","correlation_id":null,"key":"cd_auto_rollback","action":"disable","extra.thing":"false"}
{"severity":"INFO","time":"2020-11-24T02:31:29.177Z","correlation_id":null,"key":"cd_auto_rollback","action":"enable","extra.thing":"Project:1"}
{"severity":"INFO","time":"2020-11-24T02:31:29.183Z","correlation_id":null,"key":"cd_auto_rollback","action":"disable","extra.thing":"Project:1"}
{"severity":"INFO","time":"2020-11-24T02:31:29.188Z","correlation_id":null,"key":"cd_auto_rollback","action":"enable_percentage_of_time","extra.percentage":"50"}
{"severity":"INFO","time":"2020-11-24T02:31:29.193Z","correlation_id":null,"key":"cd_auto_rollback","action":"disable_percentage_of_time"}
{"severity":"INFO","time":"2020-11-24T02:31:29.198Z","correlation_id":null,"key":"cd_auto_rollback","action":"enable_percentage_of_actors","extra.percentage":"50"}
{"severity":"INFO","time":"2020-11-24T02:31:29.203Z","correlation_id":null,"key":"cd_auto_rollback","action":"disable_percentage_of_actors"}
{"severity":"INFO","time":"2020-11-24T02:31:29.329Z","correlation_id":null,"key":"cd_auto_rollback","action":"remove"}
ci_resource_groups_json.log
GitLab 15.9 で導入されました。
このファイルは
-
/var/log/gitlab/gitlab-rails/ci_resource_group_json.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/ci_resource_group_json.log
セルフコンパイルインストールの場合。
リソースグループの取得に関する情報がコンテナに含まれています。例えば
{"severity":"INFO","time":"2023-02-10T23:02:06.095Z","correlation_id":"01GRYS10C2DZQ9J1G12ZVAD4YD","resource_group_id":1,"processable_id":288,"message":"attempted to assign resource to processable","success":true}
{"severity":"INFO","time":"2023-02-10T23:02:08.945Z","correlation_id":"01GRYS138MYEG32C0QEWMC4BDM","resource_group_id":1,"processable_id":288,"message":"attempted to release resource from processable","success":true}
例では、各エントリーのresource_group_id
、processable_id
、message
、success
フィールドを示しています。
auth.log
GitLab 12.0 で導入されました。
このファイルは
-
/var/log/gitlab/gitlab-rails/auth.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/auth.log
セルフコンパイルインストールの場合。
このログには
auth_json.log
このファイルは
-
/var/log/gitlab/gitlab-rails/auth_json.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/auth_json.log
セルフコンパイルインストールの場合。
このファイルには、auth.log
のログのJSONバージョンが含まれます:
{
"severity":"ERROR",
"time":"2023-04-19T22:14:25.893Z",
"correlation_id":"01GYDSAKAN2SPZPAMJNRWW5H8S",
"message":"Rack_Attack",
"env":"blocklist",
"remote_ip":"x.x.x.x",
"request_method":"GET",
"path":"/group/project.git/info/refs?service=git-upload-pack"
}
graphql_json.log
GitLab 12.0から導入されました。
このファイルは
-
/var/log/gitlab/gitlab-rails/graphql_json.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/graphql_json.log
セルフコンパイルインストールの場合。
GraphQLクエリはファイルに記録されます。たとえば
{"query_string":"query IntrospectionQuery{__schema {queryType { name },mutationType { name }}}...(etc)","variables":{"a":1,"b":2},"complexity":181,"depth":1,"duration_s":7}
migrations.log
GitLab 12.3 で導入されました。
このファイルは
-
/var/log/gitlab/gitlab-rails/migrations.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/migrations.log
セルフコンパイルインストールの場合。
このファイルはデータベースのマイグレーションの進行状況を記録します。
mail_room_json.log
(デフォルト)
GitLab 12.6 で導入されました。
このファイルは
-
/var/log/gitlab/mailroom/current
Linux パッケージインストール時。 -
/home/git/gitlab/log/mail_room_json.log
セルフコンパイルインストールの場合。
この構造化ログファイルはmail_room
gem の内部アクティビティを記録します。名前とパスは設定可能なので、上記と一致しない場合があります。
web_hooks.log
GitLab 16.3で導入されました。
このファイルは
-
/var/log/gitlab/gitlab-rails/web_hooks.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/web_hooks.log
セルフコンパイルインストールの場合。
Webhook のバックオフ、無効化、再有効化イベントはこのファイルに記録されます。例えば
{"severity":"INFO","time":"2020-11-24T02:30:59.860Z","hook_id":12,"action":"backoff","disabled_until":"2020-11-24T04:30:59.860Z","backoff_count":2,"recent_failures":2}
{"severity":"INFO","time":"2020-11-24T02:30:59.860Z","hook_id":12,"action":"disable","disabled_until":null,"backoff_count":5,"recent_failures":100}
{"severity":"INFO","time":"2020-11-24T02:30:59.860Z","hook_id":12,"action":"enable","disabled_until":null,"backoff_count":0,"recent_failures":0}
ログの再設定
Reconfigure ログファイルは、Linux パッケージインストールの場合、/var/log/gitlab/reconfigure
にあります。セルフコンパイルインストールには reconfigure ログがありません。手動で、あるいはアップグレードの一部としてgitlab-ctl reconfigure
を実行すると、必ず reconfigure ログが作成されます。
リコンフィギュア・ログ・ファイルは、リコンフィギュアが開始された UNIX タイムスタンプに従って命名されます。1509705644.log
sidekiq_exporter.log
と web_exporter.log
PrometheusメトリクスとSidekiq Exporterの両方が有効な場合、SidekiqはWebサーバーを起動し、定義されたポート(デフォルト:8082
)をリッスンします。デフォルトでは、Sidekiq Exporterのアクセスログは無効になっていますが、有効にすることもできます:
- Linuxパッケージインストールでは、
/etc/gitlab/gitlab.rb
のsidekiq['exporter_log_enabled'] = true
オプションを使用します。 - セルフコンパイルによるインストールでは、
gitlab.yml
のsidekiq_exporter.log_enabled
オプションを使用してください。
有効にすると、インストール方法に応じて、このファイルは次の場所に置かれます:
-
/var/log/gitlab/gitlab-rails/sidekiq_exporter.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/sidekiq_exporter.log
セルフコンパイルインストールの場合。
Prometheus メトリクスと Web Exporter の両方が有効な場合、Puma は Web サーバーを起動し、定義されたポート (デフォルト:8083
) をリッスンし、インストール方法に基づいた場所にアクセスログが生成されます:
-
/var/log/gitlab/gitlab-rails/web_exporter.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/web_exporter.log
セルフコンパイルインストールの場合。
database_load_balancing.log
GitLab 12.3 で導入されました。
GitLabDatabase Load Balancingの詳細がコンテナで含まれています。このファイルは
-
/var/log/gitlab/gitlab-rails/database_load_balancing.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/database_load_balancing.log
セルフコンパイルインストールの場合。
zoekt.log
GitLab 15.9 で導入されました。
このファイルはZoektを利用した正確なコード検索機能に関連する情報を記録します。
このファイルは
-
/var/log/gitlab/gitlab-rails/zoekt.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/zoekt.log
セルフコンパイルインストールの場合。
elasticsearch.log
GitLab 12.6 で導入されました。
このファイルは Elasticsearch インテグレーションに関連する情報を記録します。Elasticsearch のインデックス作成や検索時のエラーも記録します。このファイルは
-
/var/log/gitlab/gitlab-rails/elasticsearch.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/elasticsearch.log
セルフコンパイルインストールの場合。
各行には、Elasticsearch や Splunk などのサービスで取り込むことができる JSON が含まれています。わかりやすくするために、以下の例の行に改行を追加しました:
{
"severity":"DEBUG",
"time":"2019-10-17T06:23:13.227Z",
"correlation_id":null,
"message":"redacted_search_result",
"class_name":"Milestone",
"id":2,
"ability":"read_milestone",
"current_user_id":2,
"query":"project"
}
exceptions_json.log
GitLab 12.6 で導入されました。
このファイルは、Gitlab::ErrorTracking
によって追跡されている例外に関する情報をログに記録し、救出された例外の標準的で一貫した処理方法を提供します。このファイルは
-
/var/log/gitlab/gitlab-rails/exceptions_json.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/exceptions_json.log
セルフコンパイルインストールの場合。
各行には Elasticsearch が取り込むことのできる JSON が含まれています。例えば
{
"severity": "ERROR",
"time": "2019-12-17T11:49:29.485Z",
"correlation_id": "AbDVUrrTvM1",
"extra.project_id": 55,
"extra.relation_key": "milestones",
"extra.relation_index": 1,
"exception.class": "NoMethodError",
"exception.message": "undefined method `strong_memoize' for #<Gitlab::ImportExport::RelationFactory:0x00007fb5d917c4b0>",
"exception.backtrace": [
"lib/gitlab/import_export/relation_factory.rb:329:in `unique_relation?'",
"lib/gitlab/import_export/relation_factory.rb:345:in `find_or_create_object!'"
]
}
service_measurement.log
GitLab 13.0で導入されました。
このファイルは
-
/var/log/gitlab/gitlab-rails/service_measurement.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/service_measurement.log
セルフコンパイルインストールの場合。
このログには、各サービス実行の計測値を含む単一の構造化ログのみが含まれます。このログには、SQL 呼び出し回数、execution_time
、gc_stats
、memory usage
などの測定値が含まれています。
使用例:
{ "severity":"INFO", "time":"2020-04-22T16:04:50.691Z","correlation_id":"04f1366e-57a1-45b8-88c1-b00b23dc3616","class":"Projects::ImportExport::ExportService","current_user":"John Doe","project_full_path":"group1/test-export","file_path":"/path/to/archive","gc_stats":{"count":{"before":127,"after":127,"diff":0},"heap_allocated_pages":{"before":10369,"after":10369,"diff":0},"heap_sorted_length":{"before":10369,"after":10369,"diff":0},"heap_allocatable_pages":{"before":0,"after":0,"diff":0},"heap_available_slots":{"before":4226409,"after":4226409,"diff":0},"heap_live_slots":{"before":2542709,"after":2641420,"diff":98711},"heap_free_slots":{"before":1683700,"after":1584989,"diff":-98711},"heap_final_slots":{"before":0,"after":0,"diff":0},"heap_marked_slots":{"before":2542704,"after":2542704,"diff":0},"heap_eden_pages":{"before":10369,"after":10369,"diff":0},"heap_tomb_pages":{"before":0,"after":0,"diff":0},"total_allocated_pages":{"before":10369,"after":10369,"diff":0},"total_freed_pages":{"before":0,"after":0,"diff":0},"total_allocated_objects":{"before":24896308,"after":24995019,"diff":98711},"total_freed_objects":{"before":22353599,"after":22353599,"diff":0},"malloc_increase_bytes":{"before":140032,"after":6650240,"diff":6510208},"malloc_increase_bytes_limit":{"before":25804104,"after":25804104,"diff":0},"minor_gc_count":{"before":94,"after":94,"diff":0},"major_gc_count":{"before":33,"after":33,"diff":0},"remembered_wb_unprotected_objects":{"before":34284,"after":34284,"diff":0},"remembered_wb_unprotected_objects_limit":{"before":68568,"after":68568,"diff":0},"old_objects":{"before":2404725,"after":2404725,"diff":0},"old_objects_limit":{"before":4809450,"after":4809450,"diff":0},"oldmalloc_increase_bytes":{"before":140032,"after":6650240,"diff":6510208},"oldmalloc_increase_bytes_limit":{"before":68537556,"after":68537556,"diff":0}},"time_to_finish":0.12298400001600385,"number_of_sql_calls":70,"memory_usage":"0.0 MiB","label":"process_48616"}
geo.log
Geo は構造化されたログメッセージをgeo.log
ファイルに保存します。Linux パッケージインストールの場合、このファイルは/var/log/gitlab/gitlab-rails/geo.log
にあります。
このファイルには、Geo がリポジトリとファイルの同期を試みたときの情報がコンテナで格納されています。ファイルの各行には、(Elasticsearch や Splunk などに) 取り込むことができる個別の JSON エントリが含まれています。
使用例:
{"severity":"INFO","time":"2017-08-06T05:40:16.104Z","message":"Repository update","project_id":1,"source":"repository","resync_repository":true,"resync_wiki":true,"class":"Gitlab::Geo::LogCursor::Daemon","cursor_delay_s":0.038}
このメッセージは、Geo がプロジェクト1
に対してリポジトリの更新が必要であることを検知したことを示しています。
update_mirror_service_json.log
このファイルは
-
/var/log/gitlab/gitlab-rails/update_mirror_service_json.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/update_mirror_service_json.log
セルフコンパイルインストールの場合。
このファイルには、プロジェクトのミラーリング中に発生した LFS エラーに関する情報が含まれています。他のプロジェクトのミラーリングエラーをこのログに移す作業をしている間、一般的なログを使用することができます。
{
"severity":"ERROR",
"time":"2020-07-28T23:29:29.473Z",
"correlation_id":"5HgIkCJsO53",
"user_id":"x",
"project_id":"x",
"import_url":"https://mirror-source/group/project.git",
"error_message":"The LFS objects download list couldn't be imported. Error: Unauthorized"
}
llm.log
GitLab 16.0 で導入されました。
llm.log
ファイルはAI機能に関連する情報を記録します。
このファイルは
-
/var/log/gitlab/gitlab-rails/llm.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/llm.log
セルフコンパイルインストールの場合。
レジストリログ
Linux パッケージインストールの場合、コンテナレジストリログは/var/log/gitlab/registry/current
にあります。
NGINXログ
Linuxパッケージのインストールでは、NGINXのログがあります:
-
/var/log/gitlab/nginx/gitlab_access.log
:GitLab へのリクエストのログ。 -
/var/log/gitlab/nginx/gitlab_error.log
:GitLab に対する NGINX エラーのログ -
/var/log/gitlab/nginx/gitlab_pages_access.log
:Pages 静的サイトへのリクエストのログ -
/var/log/gitlab/nginx/gitlab_pages_error.log
:Pages静的サイトのNGINXエラーログ -
/var/log/gitlab/nginx/gitlab_registry_access.log
:コンテナレジストリへのリクエストのログ。 -
/var/log/gitlab/nginx/gitlab_registry_error.log
:コンテナレジストリに対するNGINXエラーのログです。 -
/var/log/gitlab/nginx/gitlab_mattermost_access.log
:Mattermost へのリクエストのログ。 -
/var/log/gitlab/nginx/gitlab_mattermost_error.log
:Mattermost に対する NGINX エラーのログ。
以下は GitLab NGINX のデフォルトのアクセスログフォーマットです:
'$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"'
$request
と$http_referer
は、シークレットトークンのような機密性の高いクエリ文字列パラメータ用にフィルタリングされています。
ページのログ
Linux パッケージのインストールでは、Pages のログは/var/log/gitlab/gitlab-pages/current
にあります。
使用例:
{
"level": "info",
"msg": "GitLab Pages Daemon",
"revision": "52b2899",
"time": "2020-04-22T17:53:12Z",
"version": "1.17.0"
}
{
"level": "info",
"msg": "URL: https://gitlab.com/gitlab-org/gitlab-pages",
"time": "2020-04-22T17:53:12Z"
}
{
"gid": 998,
"in-place": false,
"level": "info",
"msg": "running the daemon as unprivileged user",
"time": "2020-04-22T17:53:12Z",
"uid": 998
}
Mattermostのログ
Linux パッケージインストールの場合、Mattermost のログは以下の場所にあります:
/var/log/gitlab/mattermost/mattermost.log
/var/log/gitlab/mattermost/current
Workhorse ログ
Linux パッケージインストールの場合、Workhorse のログは/var/log/gitlab/gitlab-workhorse/current
にあります。
PgBouncerのログ
Linuxパッケージインストールの場合、PgBouncerのログは/var/log/gitlab/pgbouncer/current
にあります。
PostgreSQLのログ
Linuxパッケージインストールの場合、PostgreSQLのログは/var/log/gitlab/postgresql/current
にあります。
Prometheus のログ
Linux パッケージインストールの場合、Prometheus のログは/var/log/gitlab/prometheus/current
にあります。
Redisのログ
Linuxパッケージインストールの場合、Redisのログは/var/log/gitlab/redis/current
にあります。
アラートマネージャーのログ
Linux パッケージインストールの場合、Alertmanager のログは/var/log/gitlab/alertmanager/current
にあります。
crond ログ
Linux パッケージのインストールでは、crond のログは/var/log/gitlab/crond/
にあります。
Grafana のログ
Linuxパッケージインストールの場合、Grafanaのログは/var/log/gitlab/grafana/current
。
LogRotate のログ
Linuxパッケージインストールの場合、logrotate
のログは/var/log/gitlab/logrotate/current
にあります。
GitLab モニターのログ
Linux パッケージインストールの場合、GitLab Monitor のログは/var/log/gitlab/gitlab-monitor/
にあります。
GitLab Exporter
Linux パッケージインストールの場合、GitLab Exporter のログは/var/log/gitlab/gitlab-exporter/current
にあります。
GitLab エージェントサーバー
Linux パッケージインストールの場合、GitLab エージェントサーバーのログは/var/log/gitlab/gitlab-kas/current
にあります。
Praefect のログ
Linux パッケージインストールの場合、Praefect のログは/var/log/gitlab/praefect/
にあります。
GitLab では、Promefect の Prometheus メトリクスも追跡しています。
バックアップログ
GitLab 14.1 で導入されました。
Linux パッケージインストールでは、バックアップログは/var/log/gitlab/gitlab-rails/backup_json.log
にあります。
このログはGitLabのバックアップが作成されたときに出力されます。このログを使って、バックアップ処理がどのように行われたかを理解することができます。
パフォーマンスバーの統計
GitLab 13.7 で導入されました。
このファイルは
-
/var/log/gitlab/gitlab-rails/performance_bar_json.log
Linux パッケージインストール時。 -
/home/git/gitlab/log/performance_bar_json.log
セルフコンパイルインストールの場合。
パフォーマンス・バーの統計(現在は SQL クエリの継続時間のみ)がこのファイルに記録されます。例えば
{"severity":"INFO","time":"2020-12-04T09:29:44.592Z","correlation_id":"33680b1490ccd35981b03639c406a697","filename":"app/models/ci/pipeline.rb","method_path":"app/models/ci/pipeline.rb:each_with_object","request_id":"rYHomD0VJS4","duration_ms":26.889,"count":2,"query_type": "active-record"}
これらの統計は .com でのみ記録され、自己デプロイでは無効になります。
ログの収集
先に挙げたコンポーネントのどれかに限定されないイシューをトラブルシューティングするときは、GitLabインスタンスから複数のログや統計情報を同時に収集するのが便利です。
主なログを簡単に説明します。
バグやエラーがすぐに再現できる場合は、GitLabのメインログをファイルに保存し、何度か問題を再現してみましょう:
sudo gitlab-ctl tail | tee /tmp/<case-ID-and-keywords>.log
Control +Cでログ収集を終了します。
GitLabSOS
先に挙げたGitLabコンポーネントのいずれかに容易に起因することができないパフォーマンス低下やカスケードエラーが発生した場合、GitLabSOSはGitLabインスタンスの広い視野を提供することができます。詳細と実行手順については、GitLabSOSのドキュメントをお読みください。
Fast-stats
Fast-statsは GitLab のログからパフォーマンスの統計情報を作成・比較するツールです。詳細と実行方法については、fast-statsのドキュメントを読んでください。
相関IDで関連するログエントリを検索
ほとんどのリクエストには、関連するログエントリを見つけるために使用できるログIDがあります。