请问Java生成的这类嵌套键值对日志字符串格式是否有类似JSON的专有名称?
格式名称相关解答
你给出的这类自定义序列化格式没有全球统一的官方专有名称,Java生态内对这类格式的常见称呼有以下几类:
- 最通用的叫法是 嵌套键值对(Nested KV)日志格式,也有不少开发者称其为 Java Properties扩展嵌套格式,本质是在Java原生平级
Properties格式的基础上做的自定义改造:增加大括号支持嵌套结构,用分号替代原生Properties的换行作为键值对分隔符,适配单行日志输出的要求。 - 部分特定业务场景下也会直接叫它 日志自定义KV序列化格式,这类格式大多是Java日志输出逻辑的自定义实现:相比JSON序列化打日志的性能开销更低、转义字符更少,同时比纯文本日志更容易做结构化解析,适合高并发服务的日志输出场景。
你给出的示例格式属于这类自定义变体的典型写法:time(HH:MM:SS.nnn) => some value(ex: 12345, predefined code.) : {key=value;key={key=value;key=value;};key=value;}
如果需要解析这类格式,目前没有通用的第三方解析库,你可以根据实际格式规则写正则匹配提取,或是找到对应Java项目的日志输出代码确认完整格式规则即可。
内容的提问来源于stack exchange,提问作者J.Elena Suh
相关产品推荐
相关产品推荐

