问题描述:
1、Java项目logback日志以文本形式存入rabbitMq;
2、使用logstash 读取rabbitMq 数据,进行json转换时报错;
3、报错原因,原message数据中有json格式错误,如下:
{\"service_name\": \"api\", \"level\": \"INFO\", \"log_time\": \"2021-06-10 11:36:32,414\", \"thread\": \"http-nio-8081-exec-1\", \"host_ip\": \"192.168.0.12\", \"service_port\": \"8081\", \"span_id\": \"50c7dfeacd51420ba8b3c215899c91ca\", \"class\": \"c.w.web.controller.UserController:128\", \"log_msg\": \"传入参数 from: {\"endDate\":\"\",\"loginName\":\"23423\",\"pageNum\":1,\"pageSize\":10,\"roleName\":\"\",\"startDate\":\"\",\"userName\":\"\"}\" }
4、产生的错误数据是在 \"request\": \"传入参数 sysUserForm:之后这一段,位置固定,项目中打印日志大多数都是这样;
需求:
因此,我想采用 filter 把 包含, \"log_msg\"这段之后的数据进行截取单独赋值一个字段出来,截取之后的数据在进行json转换存索引,或者还有什么其他更好的方案。
期待您的回复,谢谢。
你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,目前超出我们的服务范围,暂时无法为您解答。
首次提问人员可免费体验一次有问必答服务。目前首次提问的问题服务范围为:编程语言、Java开发、python、数据库、前端开发 领域专业技术问题,为您提供问题的解决思路和指导。不提供源码代写、项目文档代写、论文代写、作业代写、安装包资源发送或安装、软件使用指导等服务。
我们后续会持续优化,扩大我们的服务范围,为您带来更好地服务。