1

ジャスパー レポートの 1 つにカスタム jar を含めましたが、正常に動作しています。デバッグの目的で、このカスタム jar のクラスに log4j/slf4j を実装して、レポートが Jaspersodt Studio でプレビューされるか、JasperSoft サーバーで実行されるようにします。ファイル内のログ ステートメントを確認できます。

現在、すべての構成を追加しましたが、ロガーがファイルに出力されていません。私の推測では、log4j がトリガーされていません。

1)他に必要な設定/構成はありますか?

2) Jaspersoft サーバーに log4j のデフォルト実装があり、さまざまなクエリのみをログに記録することを確認しました。カスタム jar ロガーも含めるように設定する特定の設定/ロガーはありますか? 以下のlog4j.propertiesは、私のmavenプロジェクト(カスタムjar)のリソースフォルダーに入れられます

  log4j.rootLogger=DEBUG, stdout, file


  log4j.appender.stdout=org.apache.log4j.ConsoleAppender
  log4j.appender.stdout.Target=System.out
  log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
  log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n


  log4j.appender.file=org.apache.log4j.RollingFileAppender
  log4j.appender.file.File=C:\\log4j-application.log
  log4j.appender.file.MaxFileSize=5MB
  log4j.appender.file.MaxBackupIndex=10
  log4j.appender.file.layout=org.apache.log4j.PatternLayout
  log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

編集: 以下は Java コードです。これは jar にエクスポートされ、ジャスパー プロジェクトのクラスパスに追加されます。レポート チャートをプレビューすると、作成され、このカスタマイザーが実行されますが、指定したファイルにログ ステートメントが表示されません。上記のlog4j.properties:

public class BarChartDemo {
static Logger LOGGER = Logger.getLogger(BarChartDemo.class);
   public void customize(JFreeChart chart, JRChart jasperChart) {
             LOGGER.debug("debug");
             LOGGER.info("info");
             LOGGER.warn("warn");
             LOGGER.error("error");
             ?/customizer code
    }
  }
4

0 に答える 0