Syslogログエンジン

2.4から「Syslog」ログクラスが追加され、簡単にSyslogを使用できるようになりました。
CakePHP側の設定はbootstrap.php内のCakeLogコンフィグのengineを'Syslog'に変更するだけです。あとは必要に応じてオプションを設定しサーバ側にお任せするだけです。

// app/Config/bootstrap.php
CakeLog::config( 'debug', array(
    'engine' => 'Syslog',
    'types' => array( 'notice', 'info', 'debug'),  // 採用するログレベル
//  'format' => '%s: %s',
//  'flag' => LOG_ODELAY,
//  'prefix' => '',
//  'facility' => LOG_USER
));

パラメーターはopenlogを参照

  • format - 出力メッセージのフォーマット。2つのパラメータ、1つ目の%sが「ログレベル」、2つ目の%sが「メッセージ本体」を組み合わせてフォーマットします。
  • flag - 「openlog」のoptionを参照。デフォルトはLOG_ODELAY
  • prefix - 出力メッセージの先頭に付与する文字列が設定できます。
  • facility - 「openlog」のfacilityを参照。デフォルトはLOG_USER

ログレベル

ログレベル(Severity)はrfc5424(syslog)に準拠するよう変更されているようです。それぞれ、$this->log( 'メッセージ', LOG_EMERG)などで使い分けできます。

// lib/Cake/Log/CakeLog.php

/**
 * Default log levels as detailed in RFC 5424
 * http://tools.ietf.org/html/rfc5424
 *
 * @var array
 */
    protected static $_defaultLevels = array(
        'emergency' => LOG_EMERG,
        'alert' => LOG_ALERT,
        'critical' => LOG_CRIT,
        'error' => LOG_ERR,
        'warning' => LOG_WARNING,
        'notice' => LOG_NOTICE,
        'info' => LOG_INFO,
        'debug' => LOG_DEBUG,
    );
lib/Cake/Log/Engine/SyslogLog.php
Utility > Logging > Logging to Syslog
  • このエントリーをはてなブックマークに追加

関連記事

アップロードファイルのバリデーションルール

CakePHP 2.2や2.3になってファイルアップロードに対するルールがコアバリデーションに追加されているようで、まとめてみました。 コアバリデーション 関連しそうなルールは以下の4つの

no image

HttpSocketを使用してリクエスト送信

CakePHPには、Webサービスへのリクエスト送信のためのHttpSocketクラスが用意されています。 HttpSocket get HTTP GETリクエストを発行します。デモ H

入力文字列の長さ(文字数)をバリデーション

CakePHP 2には、コアバリデーションに文字列の長さを検証する関数が用意されています。 文字列長(コア)バリデーション minLength - 最小文字数以上であること maxLengt

バリデーションエラーメッセージの取得

CakePHP 2.xになってバリデーションエラー時に返却されるメッセージのデータ形式が変更になったようです。1.3系では、ひとつのフィールドに対して返却されるメッセージは一つのルールのみですが、2.

CakeEmailでメール送信(@gmail)

CakePHP 2になって追加されたクラスCakeEmailがシンプルに使えます。これを使用してメール送信を行う処理を実装してみました。 CakeEmailクラスの読み込み /app/Config

Formヘルパーのinputタグのdiv/labelなどの設定

Formヘルパーのinputではデフォルトでは以下のようにdivで囲われて、labelが付与されて出力されます。 CSSのフレームワークなどであらかじめ決まったスタイルがある場合に便利に作られていま

多言語サイト向けに翻訳ファイルを使って翻訳を行う

CakePHPには、翻訳をビヘイビアを使用する方法と翻訳ファイルを使用する方法の2つがあるそうです。(他にもあるのかな?) 今回は、翻訳ファイルを使用して言語の切り替えを行い、その言語設定をCook

CSS/JSをひとまとめにして軽量化するプラグイン「Minify plugin for CakePHP」

「Minify plugin for CakePHP」は、インクルードするCSSもしくはJSファイルをひとまとめにしてキャッシュ化してくれるプラグインです。 導入 ダウンロード・解凍し

Markdown Plugin

「Markdown CakePHP Plugin」は、MarkDown書式をレンダリングしてくれるビューヘルパーです。MarkDownについて勉強しているうちに出会ったので試し打ちです。 ダウンロー

ユーザ登録(仮登録・メール・本登録)

以前1.3版で投稿した「ユーザ登録」処理の2.x版を作成しました。フローは同じで以下のようにします。 1. メールアドレス・パスワードでユーザ登録 2. この時点では仮登録として、本登録用のU

Comment

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

    PAGE TOP ↑