0

GUIに2つの出力ロガーを持たせようとしています。このコードは、各ファイルに正しく出力されます。

public static void main(String[] args) {
    try {
        Handler handler = new FileHandler("OutFile.log");
        Logger.getLogger("myApp").addHandler(handler);
        Logger.getLogger("myApp").setUseParentHandlers(false);
        Handler handler2 = new FileHandler("User.log");
        handler2.setFormatter(new SimpleFormatter());
        Logger.getLogger("User").addHandler(handler2);
        Logger.getLogger("User").setUseParentHandlers(false);


        Logger.getLogger("myApp").severe("AppStarting");
        Logger.getLogger("User").severe("UserLogStarting");

しかし、その後、GUI で同じ 2 行をテストすると、機能しなくなります。私のロガーの解釈は間違っていますか、それとも何か間違っていますか?

代わりに、メインで以下の行を使用すると (したがって、文字列から myApp を削除しました)、ロガーはアプリ全体で完全に機能しますが、すべてが 1 つのファイルにのみ送信されます。

    Logger.getLogger("").addHandler(handler);

PS できればサードパーティのクラスは使いたくありません。

4

1 に答える 1