LoginSignup
2
1

More than 5 years have passed since last update.

Nextcloudの管理用CLI「occ」詳細: ログ管理に関するコマンド群

Posted at

はじめに

NextcloudにはCLI環境としてoccというものがあり、さまざまな設定、管理を行うことができます。 ここではoccで使える様々なコマンド群のうち、ログ管理に関するコマンド群についてまとめてみます。

※occ の使い方については、 Nextcloudの管理用CLI「occ」コマンドについての記事を参照ください。

環境について

ここで記載するoccを実行するNextcloudのバージョンは、2019年3月30日現在で最新の15.0.5を利用します。

WebサーバはNginxを利用した環境で実施しております。ApacheをWebサーバとして利用している場合は、sudo -u のユーザIDをapacheに読み替えてください。

ログ管理に関するコマンド群

ログ管理に関するコマンドは以下のようなものがあります。

  • log:file
  • log:manage

log:file

Nextcloudログの出力に関する設定を行います。オプションを何も指定しない場合はログ出力設定情報を出力します。

使い方

log:file [オプション]

オプション

  • --enable Nextcloudログの出力を有効にします。
    # ログ出力はデフォルトで有効になっており無効にする手段が見つからないので利用することはないと思われます。
  • --file=FILE Nextcloudログの出力先ファイルを絶対パスで指定します。出力先ディレクトリはあらかじめ作成しておく必要があり、このディレクトリに対してNextcloud実行ユーザ(=occ実行ユーザ)が読み書きできるように権限設定をする必要があります。
  • --rotate-size=ROTATE-SIZE Nextcloudログファイルをローテートするファイルサイズを指定します。ファイルサイズはバイト単位で指定しますが、"k(K)"(キロバイト)、"m(M)"(メガバイト)、"t(T)"(テラバイト)の単位も指定できます。--rotate-size=0とするとログローテートは行われません。ローテートした古いファイルは"[ログファイル名].[数字]"というファイル名になります。
    ログローテート処理はバックグラウンド処理で行われるため厳密にここに示したサイズジャストでローテートされず、若干大きいファイルサイズとなります。
    logrotateによるログローテーションの運用もあわせて検討しましょう。

使用例

①現在のログ出力設定情報を出力する。

$ sudo -u nginx php /var/www/html/nextcloud/occ log:file
Log backend file: enabled
Log file: /var/www/html/nextcloud/data/nextcloud.log
Rotate at: 100 MB

②ログファイルの出力先を/var/log/nextcloud/nextcloud.logにする。

$ sudo -u nginx php /var/www/html/nextcloud/occ log:file --file=/var/log/nextcloud/nextcloud.log
Log backend file: enabled
Log file: /var/log/nextcloud/nextcloud.log
Rotate at: 100 MB

③ログファイルサイズが1GBを超えたらローテートする。

$ sudo -u nginx php /var/www/html/nextcloud/occ log:file --rotate-size=1g
Log backend file: enabled
Log file: /var/log/nextcloud/nextcloud.log
Rotate at: 1 GB

log:manage

Nextcloudログの出力に関する詳細な設定を行います。オプションを何も指定しない場合はログ出力詳細設定情報を出力します。

使い方

log:manage [オプション]

オプション

  • --backend=BACKEND Nextcloudログ出力のバックエンド処理方法を設定します。設定可能なパラメータは以下のとおりです。
    • file
    • syslog
    • errorlog
    • systemd
  • --level=LEVEL Nextcloudログの出力レベルを指定します。設定可能なレベルは以下のとおりです(キーワード/数字のどちらでも指定できます)。
    • debug (0) (すべてのアクション、最も詳細なロギング)
    • info (1) (ユーザーログインやファイルアクティビティなどのアクティビティに加えて、警告、エラーをロギング)
    • warning (2) (警告(=処理が成功したものの潜在的な問題があるもの)、エラーをロギング)
    • error (3) (エラーをロギング)
  • --timezone=TIMEZONE Nextcloudログに記録する日時のタイムゾーンを指定します。指定するタイムゾーンは PHPのタイムゾーン指定 と同じとなります。

使用例

①現在のログ出力詳細設定情報を出力する。

$ sudo -u nginx php /var/www/html/nextcloud/occ log:manage          
Enabled logging backend: file
Log level: Warning (2)
Log timezone: UTC

②ログをsyslogとして出力する。

$ sudo -u nginx php /var/www/html/nextcloud/occ log:manage --backend=syslog
Enabled logging backend: syslog
Log level: Warning (2)
Log timezone: UTC

③ログ出力レベルをinfoにし、タイムゾーンを日本時間にする。

# sudo -u nginx php /var/www/html/nextcloud/occ log:manage --level=info --timezone Asia/Tokyo
Enabled logging backend: file
Log level: Info (1)
Log timezone: Asia/Tokyo

★この記事は、スタイルズ社のNextcloudサイトNextcloudブログにも公開しております!

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1