Logger クラス
[詳解]
#include <SystemLogger.h>
|
enum | {
RTL_SILENT,
RTL_FATAL,
RTL_ERROR,
RTL_WARN,
RTL_INFO,
RTL_DEBUG,
RTL_TRACE,
RTL_VERBOSE,
RTL_PARANOID
} |
|
typedef _CharT | char_type |
|
typedef _Traits | traits_type |
|
typedef std::basic_ostream< char_type, traits_type > | ostream_type |
|
typedef std::basic_streambuf< char_type, traits_type > | streambuf_type |
|
typedef coil::Mutex | Mutex |
|
typedef coil::Guard< Mutex > | Guard |
|
Logger クラス
- ログ出力をシリアライズしかつ分配するバッファクラス
- ログをフォーマットするフォーマットクラス で構成されるロガークラス
- バッファクラス
- マルチスレッド書き込みに対してシリアライズしてバッファリングする
- 複数の出力先にログを出力できる
- 出力先の例としては、ファイル、標準出力、リモートのログサーバ等
- バッファに対してaddStreamで出力先を追加できる
- フォーマットクラス
- ログレベルを指定して出力できる
- 書式は、[時間] [ログレベル] [サフィックス] [メッセージ]
- [時間] [ログレベル] [サフィックス]は自動付加
- [サフィックス] を指定できる関数を用意
- ログレベルは以下のとおり
- RTL_SILENT
- RTL_FATAL
- RTL_ERROR
- RTL_WARN
- RTL_INFO
- RTL_DEBUG
- RTL_TRACE
- RTL_VERBOSE
- RTL_PARANOID
- このフォーマットオブジェクトに対するロック・アンロック機能
列挙値 |
---|
RTL_SILENT |
|
RTL_FATAL |
|
RTL_ERROR |
|
RTL_WARN |
|
RTL_INFO |
|
RTL_DEBUG |
|
RTL_TRACE |
|
RTL_VERBOSE |
|
RTL_PARANOID |
|
RTC::Logger::Logger |
( |
const char * |
name = "" | ) |
|
コンストラクタ
コンストラクタ
- 引数
-
streambuf | LogStream オブジェクト |
virtual RTC::Logger::~Logger |
( |
void |
| ) |
|
|
virtual |
void RTC::Logger::disableEscapeSequence |
( |
| ) |
|
void RTC::Logger::enableEscapeSequence |
( |
| ) |
|
std::string RTC::Logger::getDate |
( |
void |
| ) |
|
|
protected |
フォーマットされた現在日時文字列を取得する。 指定された書式で記述した現在日時を取得する。
- 戻り値
- 書式指定現在日時
virtual void RTC::Logger::header |
( |
int |
level | ) |
|
|
protectedvirtual |
void RTC::Logger::setClockType |
( |
std::string |
clocktype | ) |
|
ログ記録時に使用するクロックを指定する
ログ記録時に時刻を取得するためのクロックの種類を指定することができる。
- system: システムクロック。デフォルト
- logical: 論理時間クロック。
- adjusted: 調整済みクロック。
論理時間クロックについては
coil::ClockManager::instance().getClock("logical").settime()
で時刻を設定する必要がある。
- 引数
-
void RTC::Logger::setDateFormat |
( |
const char * |
format | ) |
|
ヘッダに付加する日時フォーマットを指定する。
フォーマット指定文字列は以下のとおり。
%a abbreviated weekday name
%A full weekday name
%b abbreviated month name
%B full month name
%c the standard date and time string
%d day of the month, as a number (1-31)
%H hour, 24 hour format (0-23)
%I hour, 12 hour format (1-12)
%j day of the year, as a number (1-366)
%m month as a number (1-12).
Note: some versions of Microsoft Visual C++ may use values that range
from 0-11.
%M minute as a number (0-59)
%p locale's equivalent of AM or PM
%Q millisecond as a number (0-999) from ver 1.1
%q microsecond as a number (0-999) from ver 1.1
%S second as a number (0-59)
%U week of the year, sunday as the first day
%w weekday as a decimal (0-6, sunday=0)
%W week of the year, monday as the first day
%x standard date string
%X standard time string
%y year in decimal, without the century (0-99)
%Y year in decimal, with the century
%Z time zone name
%% a percent sign
- 引数
-
bool RTC::Logger::setLevel |
( |
const char * |
level | ) |
|
void RTC::Logger::setName |
( |
const char * |
name | ) |
|
ヘッダの日時の後に付加する文字列を設定する。
ヘッダの日時の後に付加する接頭語文字列を設定する。
- 引数
-
int RTC::Logger::strToLevel |
( |
const char * |
level | ) |
|
|
protected |
ログレベル設定 与えられた文字列に対応したログレベルを設定する。
- 引数
-
- 戻り値
- 設定したログレベル
このクラス詳解は次のファイルから抽出されました: