|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Object java.util.logging.Handler java.util.logging.StreamHandler java.util.logging.FileHandler
public class FileHandler
単純ファイルのロギング Handler です。
FileHandler では、指定されたファイル、またはファイルのローテーションセットのいずれかに書き込むことができます。
ファイルのローテーションセットの場合、各ファイルが指定されたサイズの限度に到達すると、そのファイルが閉じられ、交換して新しいファイルが開かれます。次に、0、1、2 などを基本ファイル名に追加して、旧ファイルに名前を付けます。
デフォルトで、バッファリングは入出力ライブラリで使用可能ですが、各ログレコードは完了時にフラッシュされます。
デフォルトで、XMLFormatter クラスはフォーマット処理に使用されます。
構成: デフォルトで、各 FileHandler は次に示す LogManager 構成プロパティを使用して初期化されます。プロパティが未定義の場合 (または無効な値を持つ場合)、指定されたデフォルトの値が使用されます。
パターンは、実行時に置き換えられる、次の特殊コンポーネントを含む文字列から構成されます。
このように、たとえばカウント 2 を持つパターン「%t/java%g.log」では、通常ログファイルを、Solaris の場合は /var/tmp/java0.log と /var/tmp/java1.log に、Windows 95 の場合は C:\TEMP\java0.log と C:\TEMP\java1.log にそれぞれ書き込みます。
生成番号は 0、1、2 のような連続番号になります。
通常、一意のフィールド "%u" は 0 に設定されます。ただし、FileHandler がファイル名を開こうとし、ファイルが現在ほかのプロセスによって使用中であることがわかった場合、一意の番号フィールドを増加してもう一度試行します。これは FileHandler が現在使用されていないファイル名を検出するまで繰り返されます。コンフリクトがあり、"%u" フィールドが指定されない場合、ファイル名の末尾のドットの後ろに追加されます。これは自動的に追加される生成番号の後ろになります。
このため、 3 つのプロセスのすべてが fred%u.%g.txt にログを記録しようとする場合、プロセスのローテーションの順番に従って、最初のファイルとして fred0.0.txt、fred1.0.txt、fred2.0.txt を使用することになります。
コンフリクトを回避する目的で一意の ID を使用しても、ローカルディスクのファイルシステムが確実に動作することが保証されるだけであるということに注意してください。
コンストラクタの概要 | |
---|---|
FileHandler()
デフォルトの FileHandler を構築します。 |
|
FileHandler(String pattern)
指定されたファイル名を書き込む。 |
|
FileHandler(String pattern,
boolean append)
FileHandler を初期化し、オプションの追加モードで指定されたファイル名に書き込みます。 |
|
FileHandler(String pattern,
int limit,
int count)
ファイルのセットに書き込む FileHandler を初期化します。 |
|
FileHandler(String pattern,
int limit,
int count,
boolean append)
オプションの追加モードでファイルのセットに書き込みます。 |
メソッドの概要 | |
---|---|
void |
close()
すべてのファイルを閉じます。 |
void |
publish(LogRecord record)
LogRecord をフォーマットして発行します。 |
クラス java.util.logging.StreamHandler から継承されたメソッド |
---|
flush, isLoggable, setEncoding, setOutputStream |
クラス java.util.logging.Handler から継承されたメソッド |
---|
getEncoding, getErrorManager, getFilter, getFormatter, getLevel, reportError, setErrorManager, setFilter, setFormatter, setLevel |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
コンストラクタの詳細 |
---|
public FileHandler() throws IOException, SecurityException
IOException
- ファイルを開くときに入出力の問題が発生した場合
SecurityException
- セキュリティマネージャが存在し、呼び出し元が LoggingPermission("control") を持たない場合
NullPointerException
- パターンのプロパティが空の文字列の場合public FileHandler(String pattern) throws IOException, SecurityException
指定されたパターンの引数がファイル名のパターンとして使用され、ファイルの制限が制限なしに設定され、ファイルカウントが 1 に設定されている場合以外は、FileHandler は、LogManager プロパティ (またはそのデフォルト値) に基づいて構成されます。
書き込まれるデータの総量に制限がないので、注意して使用してください。
pattern
- 出力ファイルの名前
IOException
- ファイルを開くときに入出力の問題が発生した場合
SecurityException
- セキュリティマネージャが存在し、呼び出し元が LoggingPermission("control") を持たない場合
IllegalArgumentException
- パターンが空の文字列の場合public FileHandler(String pattern, boolean append) throws IOException, SecurityException
指定されたパターンの引数がファイル名のパターンとして使用され、ファイルの制限が制限なしに設定され、ファイルカウントが 1 に設定され、追加モードの指定された append 引数に設定されている場合以外は、FileHandler は、LogManager プロパティ (またはそのデフォルト値) に基づいて構成されます。
書き込まれるデータの総量に制限がないので、注意して使用してください。
pattern
- 出力ファイルの名前append
- 追加モードを指定する
IOException
- ファイルを開くときに入出力の問題が発生した場合
SecurityException
- セキュリティマネージャが存在し、呼び出し元が LoggingPermission("control") を持たない場合
IllegalArgumentException
- パターンが空の文字列の場合public FileHandler(String pattern, int limit, int count) throws IOException, SecurityException
指定されたパターンの引数がファイル名のパターンとして使用され、ファイルの制限が制限引数に設定され、ファイルカウントが指定された count 引数に設定されている場合以外は、FileHandler は、LogManager プロパティ (またはそのデフォルト値) に基づいて構成されます。
カウントは少なくとも 1 でなければいけません。
pattern
- 出力ファイルの名前付けのパターンlimit
- 任意の 1 つのファイルに書き込む最大バイト数count
- 使用するファイル数
IOException
- ファイルを開くときに入出力の問題が発生した場合
SecurityException
- セキュリティマネージャが存在し、呼び出し元が LoggingPermission("control") を持たない場合
IllegalArgumentException
- limit < 0、または count < 1 の場合
IllegalArgumentException
- パターンが空の文字列の場合public FileHandler(String pattern, int limit, int count, boolean append) throws IOException, SecurityException
指定されたパターンの引数がファイル名のパターンとして使用され、ファイルの制限が制限引数に設定され、ファイルカウントが指定された count 引数に設定され、追加モードが指定された append 引数に設定されている場合以外は、FileHandler は、LogManager プロパティ (またはそのデフォルト値) に基づいて構成されます。
カウントは少なくとも 1 でなければいけません。
pattern
- 出力ファイルの名前付けのパターンlimit
- 任意の 1 つのファイルに書き込む最大バイト数count
- 使用するファイル数append
- 追加モードを指定する
IOException
- ファイルを開くときに入出力の問題が発生した場合
SecurityException
- セキュリティマネージャが存在し、呼び出し元が LoggingPermission("control") を持たない場合
IllegalArgumentException
- limit < 0、または count < 1 の場合
IllegalArgumentException
- パターンが空の文字列の場合メソッドの詳細 |
---|
public void publish(LogRecord record)
StreamHandler
内の publish
record
- ログイベントの説明。null レコードは単に無視されるだけで、通知は行われないpublic void close() throws SecurityException
StreamHandler
内の close
SecurityException
- セキュリティマネージャが存在し、呼び出し元が LoggingPermission("control") を持たない場合
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。