ログエントリの属性を名前と値のペアとしてコーディングします。値の部分の区切り文字について選択する必要があります。つまり、値自体には表示されないものである必要があります。
問題のその部分について考えていない場合は、ログエントリのいくつかの属性:
- タイムスタンプ
- 重大度(致命的、エラー、情報、デバッグ)、おそらく文字列として
- ファイル名と行番号、および/またはクラス名とメソッド名としての、エントリが作成されたソースコード内の場所
- 取引
- フリーテキスト:コードがエントリに記録する必要があるものは何でも
また、考慮してください:
- スタックトレース:不特定の反復になる傾向があるため、厄介です
- ランタイムによって提供される例外情報(C#?Java?)
- ユーザーID
- スレッド情報
区切り文字の選択と競合するのは、そのフリーテキスト属性です。
区切り文字として二重角かっこを使用したおもちゃの例のログエントリ:
timemstamp=[[24-Apr-2012 15:48:28.749]] severity=[[error]] location=[[Foo.java (45)]] transaction=[[48241]] free=[[Cannot open file 'zqx3.txt']]
あなたの質問は実装言語でタグ付けされていません。Javaの世界では、log4jはロギング用の一般的なフレームワークです。.NETには適切なポートまたは類似のものがあると思います。
単純なログファイル形式も参照してください。