JavaA2Z

KAB-studio > プログラミング > JavaA2Z > ログファイルとは

ログファイル

日本語 日誌書類
英語 log file
ふりがな ろぐふぁいる
フリガナ ログファイル

解説

ログを出力するファイル
ロガーを使用して出力された文字列を書き込むためのファイル
 
J2SELoggerクラスを使用する場合、FileHandlerクラスを出力ハンドラに設定することで指定したファイルに出力することができる。
 
だが、実際には簡単な話ではない。
ログファイルは、状況によって出力方式や出力内容に様々なバリエーションが求められる。
バックグラウンドで長期運用をうシステムの場合、1日ごとに別のログファイルを残す場合がある。
ハードディスクを圧迫する場合、1ファイルファイルサイズを制限し、古いログを削除する場合がある。
さらにハードディスクを圧迫する場合、ログの出力内容を任意に制限できるようにする場合がある。
通常のログファイルとは別に、重要な問題が発生した場合に出力するための専用のログファイルを用意する場合もある。
ログファイルでありながら、他のシステムに使用するために出力のフォーマットを正しくする必要がある場合もある。
 
ログファイルは、アプリケーションにおいて最も裏方であり、ある意味最もぞんざいに作られている箇所でありながら、ユーザーに分かりやすい形でプログラム内の情報が出力されるファイルであるため、ユーザーの要望が厳しくなる傾向にある。
ログファイルの問題が「とどめの一撃」になる可能性もある。甘く考えず、ユーザーとの要件定義はしっかりとっておくこと。

参考サイト


(KAB-studioからのおしらせです)

サンプルプログラム(とか)サンプルを別ウィンドウで表示サンプルをクリップボードへコピー(WindowsでIEの場合のみ)

// Sample.java
import java.io.IOException;
import java.util.logging.Logger;
import java.util.logging.FileHandler;
import java.util.logging.SimpleFormatter;

public class Sample
{
    public static void main( String[] args )
    {
        try
        {
            // ログ名を指定してログクラスを作ります。
            // 通常は、1クラスにつき1ロガーなので、クラス名を付けます。
            Logger logger = Logger.getLogger( "Sample" );
            // ログファイルに出力するために、FileHandlerクラスを使用します。
            // 出力ファイル名はlog.txtです。
            FileHandler handler = new FileHandler( "log.txt" );
            // 普通に出力するのでSimpleFormatterクラスを使用します。
            handler.setFormatter( new SimpleFormatter() );
            // 出力先としてhandlerを追加します。
            logger.addHandler( handler );

            // INFOレベルのログを出力します。
            logger.info( "ログ出力します。" );
            // 2005/06/22 12:43:16 Sample main
            // 情報: ログ出力します。

            // Loggerクラスには最初から標準エラー出力への出力が入っているので
            // 標準エラー出力にも出力されています。

            // 同時に、log.txtが実行時のカレントディレクトリにも作られ、
            // その中に同様の出力がされているはずです。
            // ログファイルは毎回作り直されるので注意。追記ではありません。
        }
        catch( IOException e )
        {
            // FileHandlerクラスのコンストラクタで指定したファイルが
            // 作れなかったら、例外が投げられます。
            e.printStackTrace();
        }
    }
}
// Sample.java
import java.io.IOException;
import java.util.logging.Logger;
import java.util.logging.FileHandler;
import java.util.logging.SimpleFormatter;

public class Sample
{
    public static void main( String[] args )
    {
        try
        {
            // ログ名を指定してログクラスを作ります。
            // 通常は、1クラスにつき1ロガーなので、クラス名を付けます。
            Logger logger = Logger.getLogger( "Sample" );
            // ログファイルに出力するために、FileHandlerクラスを使用します。
            // 出力ファイル名はlog.txtです。
            FileHandler handler = new FileHandler( "log.txt" );
            // 普通に出力するのでSimpleFormatterクラスを使用します。
            handler.setFormatter( new SimpleFormatter() );
            // 出力先としてhandlerを追加します。
            logger.addHandler( handler );

            // INFOレベルのログを出力します。
            logger.info( "ログ出力します。" );
            // 2005/06/22 12:43:16 Sample main
            // 情報: ログ出力します。

            // Loggerクラスには最初から標準エラー出力への出力が入っているので
            // 標準エラー出力にも出力されています。

            // 同時に、log.txtが実行時のカレントディレクトリにも作られ、
            // その中に同様の出力がされているはずです。
            // ログファイルは毎回作り直されるので注意。追記ではありません。
        }
        catch( IOException e )
        {
            // FileHandlerクラスのコンストラクタで指定したファイルが
            // 作れなかったら、例外が投げられます。
            e.printStackTrace();
        }
    }
}

この単語を含むページ

「みだし」に含まれているページ

「解説」に含まれているページ

「サンプルプログラムとか」に含まれているページ

はてなブックマーク 詳細を表示 はてなブックマーク ブックマーク数
livedoorクリップ 詳細を表示 livedoorクリップ ブックマーク数
Yahoo!ブックマーク 詳細を表示 users
del.icio.us 登録する RSSに登録
サンプルを別ウィンドウで表示
サンプルをクリップボードへコピー(WindowsでIEの場合のみ)
update:2005/06/22
このページは、Javaプログラミング言語についての用語を網羅した辞書「JavaA2Z」の一ページです。
詳しくは「JavaA2Z」表紙の説明をご覧ください。