Portageのログ

From Gentoo Wiki
Jump to: navigation, search
This page is a translated version of the page Portage log and the translation is 83% complete.

Other languages:
Deutsch • ‎English • ‎русский • ‎日本語 • ‎한국어

emergeを使用してパッケージを構築すると、Portage自身から送られるメッセージに気づくのは珍しいことではありません。 メッセージには Gentoo 開発者からの重要な情報が含まれる場合がありますので読むべきです。しかし、多くの場合には急速に画面の外にスクロールしてしまって、そのときには読めません。 これは、elog と呼ばれる Portage の機能を有効にすることで、容易に解決することができます。elog の目的は、あとから読むためにメッセージをディスクに保存することです。 しかし、他のロギング機能も同様に存在します...

Portage elog サブシステム

Portage elog サブシステムは、管理者またはユーザーの注意を引き付けるために ebuild に開発者が入れた特定の、ebuild が生成したログメッセージを追跡します。 これらのメッセージにはパッケージのビルドに関連した情報が含まれ、それはしばしば重要だったり関心をもつべきものだったりします。

セットアップ

PORTAGE_ELOG_CLASSES 変数を介してログに記録する情報の種類を選択。 可能な値は、info, warn, error, log and qa

PORTAGE_ELOG_CLASSES="log warn error"

ファイルへの保存の設定

Portageは、多くの方法で elog イベントを処理することができます。

ディスクに elog のイベントを保存するためには、PORTAGE_ELOG_SYSTEM 変数の save モジュールを有効:

FILE /etc/portage/make.conf
PORTAGE_ELOG_SYSTEM="save"

メッセージは、/var/log/portage/elog または${PORT_LOGDIR}/elog(当該の変数が設定されている場合)に保存されます。

カテゴリ毎に elog ファイルを作成するには、Portage のsplit-elog 機能を有効にします。 これは、/var/log/portage/elog という場所にカテゴリベースのサブディレクトリを作成することを、Portageに強制します。

電子メール機能を設定

ログをメール送信するために、mailモジュール有効化。 メールオプションは、いくつかの追加の変数を設定することが必要です。 詳細については、/usr/share/portage/config/make.conf.exampleをお読みください。

以下のセット​​アップ例がわかりやすいでしょう:

FILE /etc/portage/make.conf
PORTAGE_ELOG_SYSTEM="mail"
# 送信先アドレスと、SMTP サーバ名
PORTAGE_ELOG_MAILURI="log-intake@example.com mail.example.com"
PORTAGE_ELOG_MAILFROM="portage@$(hostname).example.com"
PORTAGE_ELOG_MAILSUBJECT="${PACKAGE} is ${ACTION} on ${HOST}"

nullmailerやsendmailを使う例もあります:

FILE /etc/portage/make.conf
PORTAGE_ELOG_SYSTEM="mail"
# 送信先アドレスと、SMTP サーバ名
PORTAGE_ELOG_MAILURI="users@host /usr/sbin/sendmail"
PORTAGE_ELOG_MAILFROM="portage@$(hostname).example.com"
PORTAGE_ELOG_MAILSUBJECT="${PACKAGE} is ${ACTION} on ${HOST}"

関連するソフトウェア

以下は、elog 関連のソフトウェアパッケージの一覧です。

ログを構築

失敗や成功に関係なく、Portage elogサブシステムと、パッケージのビルドログはディスク上に保存されているか、リモート受信者に郵送します。 管理者が確認するためにこれは後のビルドまたはサポートチケットのビルドログを取得できます。

セットアップ

Portage のロギングを有効にするには、/etc/portage/make.conf を編集して、PORT_LOGDIR にログファイルを保存する場所を設定してください。 デフォルトでは、Portage は /var/log/portage を使用します:

FILE /etc/portage/make.conf
PORT_LOGDIR="/var/log/portage"

次に、/etc/portage/make.confにあるFEATURES設定に、Portageが構築するログがどのように処理されるのかに影響する設定を編集,または設定したいと思うかもしれません。

  • With binpkg-logs set, even binary package deployments will have their logs saved
  • When clean-logs is set, regular log file clean operations are executed. The command that is executed is defined by PORT_LOGDIR_CLEAN and defaults to a retention of the files of 7 days.
  • With split-log set, build logs are stored in category-named subdirectories of ${PORT_LOGDIR}/build
  • binpkg-logs設定もバイナリパッケージの導入は、それらのログが保存されているでしょう
  • clean-logsが設定されている場合、通常のログファイルのクリーン操作が実行されます。 実行するコマンドは以下のように定義されPORT_LOGDIR_CLEAN デフォルトは7日のファイルの保持。
  • split-logセット、ログを構築するには、カテゴリの名前のサブディレクトリに格納され${PORT_LOGDIR}/build

後片付け

clean-logsが設定されている場合、PortageはPORT_LOGDIR_CLEANで定義されているコマンドを、毎回のビルドあるいはunmerge操作後に実行します。デフォルトでは、以下のコマンドが使用されます:

FILE /usr/share/portage/config/make.globals
PORT_LOGDIR_CLEAN="find \"\${PORT_LOGDIR}\" -type f ! -name \"summary.log*\" -mtime +7 -delete"

もし任意のコマンドを定義する場合、PORT_LOGDIR変数をエスケープするのを忘れないでください(あるいは直接正しい場所にハードコートしてください)。

外部の情報