1. ログの基本概念
Nextcloudのログは、システムの状態確認や問題のデバッグに活用できます。ログの出力先はNextcloudログファイルまたはsyslogから選択可能です。
デフォルトでは、nextcloud.logというログファイルが、/config/config.php 内の datadirectory で指定されたディレクトリに作成されます。
2. ログレベル
ログレベルは、DEBUGからFATALまで5段階あります。
| レベル | 名称 | 説明 |
|---|---|---|
| 0 | DEBUG | すべてのアクティビティを記録(最も詳細) |
| 1 | INFO | ユーザーログインやファイル操作、警告、エラー、致命的エラー |
| 2 | WARN | 操作は成功するが潜在的な問題の警告、エラー、致命的エラー |
| 3 | ERROR | 操作失敗(他のサービスは継続)、致命的エラー |
| 4 | FATAL | 致命的なエラー、サーバー停止 |
デフォルトのログレベルは2(WARN)です。
3. config.phpでの設定方法
(Nextcloudインストールディレクトリ)/config/config.php に以下のように記述します
<?php
$CONFIG = array (
'log_type' => 'file',
'logfile' => 'nextcloud.log',
'loglevel' => 2,
'logdateformat' => 'F d, Y H:i:s'
);
主要パラメータ
| パラメータ | 説明 |
|---|---|
log_type | ログの出力先を指定。fileの場合、nextcloud.logファイルに出力します。syslogとすることでデフォルトのsyslogデーモンに送信されます。 |
logfile | log_typeがfileの場合のログファイル名。出力先のディレクトリを含めたフルパスで指定します。 |
loglevel | 上記ログレベルの数値(0〜4) |
logdateformat | ログの日付フォーマット |
4. ログの見方
NextcloudのログはJSON形式で出力されます。以下は典型的なログエントリの例です。
{
"reqId": "TBsuA96OuWUHgbhkP0bz",
"level": 3,
"time": "January 26, 2026 13:00:00",
"remoteAddr": "192.168.1.10",
"user": "admin",
"app": "no app in context",
"method": "PROPFIND",
"url": "/remote.php/dav/files/admin/",
"message": "(ログメッセージの内容)"
}
主要フィールドの説明
| フィールド | 説明 |
|---|---|
reqId | リクエストID。同一リクエストに関連するログを追跡する際に使用。 |
level | ログレベル(0〜4の数値) |
time | ログが記録された日時 |
remoteAddr | リクエスト元のIPアドレス |
user | 操作を実行したユーザー名 |
app | ログを出力したアプリケーションまたはコンポーネント |
method | HTTPメソッド(GET、POST など) |
url | リクエストされたURL |
message | 実際のログメッセージ(エラー内容など) |
【参考】
■Nextcloud Administration Manual – Logging
https://docs.nextcloud.com/server/stable/admin_manual/configuration_server/logging_configuration.html
