|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
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 を初期化します。 |
|
FileHandler(String pattern,
boolean append)
オプションの追加モードで、指定されたファイル名を書き込む。 |
|
FileHandler(String pattern,
int limit,
int count)
一連のファイルに書き込むように FileHandler を初期化します。 |
|
FileHandler(String pattern,
int limit,
int count,
boolean append)
省略可能な追加モードで一連のファイルに書き込むように FileHandler を初期化します。 |
メソッドの概要 | |
---|---|
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
- pattern プロパティーが空の文字列である場合public FileHandler(String pattern) throws IOException, SecurityException
指定されたパターンの引数がファイル名のパターンとして使用され、ファイルの制限が制限なしに設定され、ファイルカウントが 1 に設定されている場合以外は、FileHandler は、LogManager プロパティー (またはそのデフォルト値) に基づいて構成されます。
書き込まれるデータの総量に制限がないので、注意して使用してください。
pattern
- 出力ファイルの名前
IOException
- ファイルを開くときに入出力の問題が発生した場合
SecurityException
- セキュリティーマネージャーが存在する場合で、呼び出し元が LoggingPermission("control") を持っていない場合
IllegalArgumentException
- pattern が空の文字列である場合public FileHandler(String pattern, boolean append) throws IOException, SecurityException
指定されたパターンの引数がファイル名のパターンとして使用され、ファイルの制限が制限なしに設定され、ファイルカウントが 1 に設定され、追加モードの指定された append 引数に設定されている場合以外は、FileHandler は、LogManager プロパティー (またはそのデフォルト値) に基づいて構成されます。
書き込まれるデータの総量に制限がないので、注意して使用してください。
pattern
- 出力ファイルの名前append
- 追加モードを指定する
IOException
- ファイルを開くときに入出力の問題が発生した場合
SecurityException
- セキュリティーマネージャーが存在する場合で、呼び出し元が LoggingPermission("control") を持っていない場合
IllegalArgumentException
- pattern が空の文字列である場合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
- pattern が空の文字列である場合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
- pattern が空の文字列である場合メソッドの詳細 |
---|
public void publish(LogRecord record)
StreamHandler
内の publish
record
- ログイベントの説明。null レコードは何の通知もなく無視され、発行されないpublic void close() throws SecurityException
StreamHandler
内の close
SecurityException
- セキュリティーマネージャーが存在する場合で、呼び出し元が LoggingPermission("control") を持っていない場合
|
JavaTM Platform Standard Ed. 6 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2009 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。