小编pcv*_*nes的帖子

使用 log4j2 编写自定义 json 消息的最佳方法

我一直在将 log4j 用于不同类型的项目,并且对 log4j2 有一些经验。所有实现都使用默认的 appender 和布局。目前我需要编写一个以 json 格式写入的应用程序。所以我通过设置一个非常简单的 log4j2 记录器来尝试 log4j2 JSONLayout 布局。

public class JSONLogger {

    private static final Logger LOGGER = LogManager.getLogger();

    public static void main(String[] args) {
        JSONLogger jsonlogger = new JSONLogger() ;
    }

    public JSONLogger() {
        LOGGER.log(Level.FATAL, "hi mum!") ;

         int val1 = 10, val2 = 11, val3 = 12;

         LOGGER.log(Level.FATAL,"val1={}, val2={}, val3={}", val1, val2, val3);
    }

}
Run Code Online (Sandbox Code Playgroud)

jsonLoggerProperties.xml

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="DEBUG">
    <Properties>
        <Property name="log-path">/Users/petervannes/NetBeansProjects/JSONLogger/logfiles</Property>
    </Properties>

    <Appenders>
        <RollingFile name="json_file_appender" fileName="${log-path}/jsonlogger.json"
                     filePattern="${log-path}/%d{yyyyMMdd}_jsonlogger-%i.json" >
            <JSONLayout …
Run Code Online (Sandbox Code Playgroud)

json log4j2

10
推荐指数
3
解决办法
3万
查看次数

为什么在使用异步记录器时使用 Log4J2 写入大量日志条目会变慢

我目前正在寻找一种使用 log4j2 从日志实用程序中获得最佳性能的方法。log4j.properties 是

status = error
name = PropertiesConfig

property.log-path = /Users/petervannes/NetBeansProjects/JSONLogger_2/logfiles

appender.console.type = Console
appender.console.name = SYSTEM_OUT
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = %m%n

appender.rolling.type = RollingFile
appender.rolling.name = RollingFile
appender.rolling.immediateFlush = true 
appender.rolling.fileName = ${log-path}/jsonlogger.json
appender.rolling.filePattern = ${log-path}/%d{yyyyMMdd}_jsonlogger-%i.json

appender.rolling.layout.type = PatternLayout
appender.rolling.layout.pattern = %m%n

appender.rolling.policies.type = Policies
appender.rolling.policies.size.type = SizeBasedTriggeringPolicy
appender.rolling.policies.size.size= 1MB

appender.rolling.strategy.type = DefaultRolloverStrategy
appender.rolling.strategy.max = 4


logger.rolling.name = JSONLogger
logger.rolling.level = debug
logger.rolling.additivity = false
logger.rolling.appenderRef.rolling.ref = RollingFile

rootLogger.level = FATAL
rootLogger.appenderRef.stdout.ref = SYSTEM_OUT
Run Code Online (Sandbox Code Playgroud)

写入 100.000 …

java performance logging asynchronous log4j2

5
推荐指数
1
解决办法
1624
查看次数

如何为静态导出的 NextJS 应用程序设置 basePath

我需要构建一个 React / NextJS 应用程序并将其部署到具有特定上下文的 Weblogic J2ee 服务器。我有一些 React 经验,但我的第一步是使用 NextJS。

\n

目前构建/验证步骤是:

\n
    \n
  • 创建一个普通的 NextJS 应用程序

    \n
  • \n
  • 添加 anext.config.js和 amodule.export来更改基本路径

    \n

    module.exports = {\nbasePath: \'/test\'\n}

    \n
  • \n
  • 执行npm run dev应用程序可在“http://localhost:3000/test”上执行

    \n
  • \n
  • 在package.json中添加导出脚本"export": "next build && next export"以支持静态导出

    \n
  • \n
  • 添加以下导出以解决问题 21079

    \n
    //https://github.com/vercel/next.js/issues/21079\nmodule.exports = {\n  images: {\n    loader: "imgix",\n    path: "",\n  }\n}\n
    Run Code Online (Sandbox Code Playgroud)\n
  • \n
\n
    \n
  • 执行npm run export以创建静态 HTML 导出。已成功导出到out文件夹。\n检查文件夹index.html中的out …

javascript war next.js

5
推荐指数
1
解决办法
8057
查看次数

如何在Junit中测试java单例的不同实例

我目前有 Java 单例,它在实例化时读取一些系统属性。在生产环境中,这些系统属性将是静态的,因此一旦 JVM 重新启动,系统属性就不需要更改。

public final class SoaJSONLogger {

    private static final String SCHEMA_PROPERTY = "com.reddipped.soa.jsonlogger.schema";
    private static final String SCHEMA_STRICT = "com.reddipped.soa.jsonlogger.strict";
    private static final String DATE_TIME_FORMAT = "yyyy-MM-dd HH:mm:ss.SSS";
    private final com.reddipped.soa.jsonlogger.JSONLogger LOGGER;
    private final Pattern fieldValuePattern = Pattern.compile("(\\w+)=(.+)");
    private final String schemaName;
    private final Boolean strictSchema;

    /**
     * Logging level
     *
     * TRACE (least serious) DEBUG INFO WARNING ERROR (most serious)
     *
     */
    public static enum LEVEL {
        ERROR, WARN, INFO, DEBUG, TRACE
    };

    private static …
Run Code Online (Sandbox Code Playgroud)

java junit singleton

3
推荐指数
1
解决办法
6592
查看次数