内容へ移動
Ground Sunlight
Windowsで作る - PHPプログラミングの開発環境
ユーザ用ツール
ログイン
サイト用ツール
検索
ツール
文書の表示
以前のリビジョン
バックリンク
最近の変更
メディアマネージャー
サイトマップ
ログイン
>
最近の変更
メディアマネージャー
サイトマップ
トレース:
basic-library:monolog:2.0
この文書は読取専用です。文書のソースを閲覧することは可能ですが、変更はできません。もし変更したい場合は管理者に連絡してください。
====== ログ出力 - monolog ====== Version 2.0 ([[https://github.com/Seldaek/monolog/blob/master/LICENSE|MIT License]]) --- //[[http://www.y2sunlight.com|y2sunlight]] 2020-03-11// [[basic-library:top|定番ライブラリー に戻る]] 関連記事 * [[basic-library:project|プロジェクトの作成 - Apricot (α版)]] * [[basic-library:phpdotenv:4.1|環境変数 - phpdotenv]] * ログ出力 - monolog * [[basic-library:idiorm:1.5|ORマッパー - Idiorm]] * [[basic-library:bladeone:3.37|テンプレートエンジン - BladeOne]] * [[basic-library:fast-route:1.3|リクエストルーター - FastRoute]] * [[basic-library:league-container:3.3|DIコンテナー - League/Container]] * [[basic-library:valitron:1.4|バリデーター - Valitron]] * [[basic-library:whoops:2.7|エラーハンドラー - Whoops]] * [[basic-library:php-debugbar:1.16|デバッグ出力 - php-debugbar]] サイト * https://github.com/Seldaek/monolog --- monologの本家 テストプログラムの所在 <code> {Project Folder}\test\ </code> ---- ===== monologについて ===== Monologは、ファイル、ソケット、メール、Webサービスまたはデータベースなどの様々な場所にログ出力できます。これら出力先へのロギングは「ハンドラ」と呼ばれるインスタンスによって処理され、1つのロガーに対して複数のハンドラを登録できるます。また、ロガーは「チャネル」と呼ばれる単位で複数の作成が可能です。このように、複数ハンドラ・複数チャネルの非常に高度なロギング戦略を構築できます。 Monologは、LaravelやSymfonyなどのPHPフレームワークで採用されている事を考えれば、ロギングについてはMonolog以外に考えられません。 \\ ===== インストール ===== <code> composer require monolog/monolog </code> <code> Using version ^2.0 for monolog/monolog ./composer.json has been updated Loading composer repositories with package information Updating dependencies (including require-dev) Package operations: 2 installs, 0 updates, 0 removals - Installing psr/log (1.1.2): Downloading (100%) - Installing monolog/monolog (2.0.2): Downloading (100%) monolog/monolog suggests installing graylog2/gelf-php (Allow sending log messages to a GrayLog2 server) monolog/monolog suggests installing doctrine/couchdb (Allow sending log messages to a CouchDB server) monolog/monolog suggests installing ruflin/elastica (Allow sending log messages to an Elastic Search server) monolog/monolog suggests installing elasticsearch/elasticsearch (Allow sending log messages to an Elasticsearch server via official client) monolog/monolog suggests installing php-amqplib/php-amqplib (Allow sending log messages to an AMQP server using php-amqplib) monolog/monolog suggests installing ext-amqp (Allow sending log messages to an AMQP server (1.0+ required)) monolog/monolog suggests installing ext-mongodb (Allow sending log messages to a MongoDB server (via driver)) monolog/monolog suggests installing mongodb/mongodb (Allow sending log messages to a MongoDB server (via library)) monolog/monolog suggests installing aws/aws-sdk-php (Allow sending log messages to AWS services like DynamoDB) monolog/monolog suggests installing rollbar/rollbar (Allow sending log messages to Rollbar) monolog/monolog suggests installing php-console/php-console (Allow sending log messages to Google Chrome) Writing lock file Generating autoload files 1 package you are using is looking for funding. Use the `composer fund` command to find out more! </code> >Note: >Eclipse起動中にパッケージを取得した場合は、プロジェクト・エクスプローラー内の[プロジェクト(apricote)]を右クリックして[リフレッシュ]を選択して下さい。また、新しく取得したパッケージのインテリセンスが有効にならない場合は、プロジェクトのビルトまたはクリーン&ビルドを行ってビルドリストの更新を行って下さい。 パッケージの取得が終わると ''composer.json'' の ''require'' に以下が追加されます。 <code javascript composer.json> { "require": { "monolog/monolog": "^2.0" } } </code> \\ ===== テストプログラム ===== パッケージのテストフォルダ(''test\'')に、テスト用のコード(''monolog.php'')を作成し実行します。以下の例では、''test\var\logs\app.log'' にログファイルが出力されます。 <code php monolog.php> <?php require __DIR__.'/../vendor/autoload.php'; use Monolog\Logger; use Monolog\Formatter\LineFormatter; use Monolog\Handler\StreamHandler; // monologの初期化 //////////////////////// $log = new Logger('APRICOT'); // ログチャネルの作成 //////////////////////// $log_path = __DIR__.'/var/logs/app.log'; $log_level = Logger::DEBUG; $stream = new StreamHandler($log_path, $log_level); $log->pushHandler($stream); // ログフォーマット設定 // ログ内の改行を許可、付加情報が空の場合無視する $stream->setFormatter(new LineFormatter(null, null, true, true)); // ログ出力 /////////////////////////////// $log->error('Errorメッセージ'); $log->warning('Warningメッセージ'); $log->info('Infoメッセージ'); $log->debug('Debugメッセージ'); echo 'Hello Monolog!'; </code> === 実行結果 === <code- app.log> [2020-03-20T02:05:26.435346+01:00] APRICOT.ERROR: Errorメッセージ [2020-03-20T02:05:26.436812+01:00] APRICOT.WARNING: Warningメッセージ [2020-03-20T02:05:26.437220+01:00] APRICOT.INFO: Infoメッセージ [2020-03-20T02:05:26.437657+01:00] APRICOT.DEBUG: Debugメッセージ </code>
basic-library/monolog/2.0.txt
· 最終更新: 2020/04/18 10:50 by
y2sunlight
ページ用ツール
文書の表示
以前のリビジョン
バックリンク
文書の先頭へ