java - Spring Boot 中的审计日志
问题描述
我们在 Spring Boot 中有微服务架构应用程序。我们计划在我们的服务中添加审计日志。这样我们就可以获得类似的信息,
- Admin123 停用 User123
- User123 更改密码
- 用户 123 登录
高水平:
- 为此,我们计划将所需信息以 JSON 格式写入日志文件。(每个服务日志会单独维护)
- 然后 Devops 团队,使用 Filebeat 读取日志并将日志推送到弹性搜索。
- 然后我们可以使用 kibana 查询/可视化来自弹性搜索的信息。
JSON(日志结构):
{
"userId" : "100",
"ip" : "192.168.1.1",
"deviceId" : "f07a13984f6d116a",
"country" : "India",
"language" : "English (U.S)"
"userAgent" : "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36",
"timestamp" : "2004-02-12T15:19:21.000+00:00",
"event" : "update product",
"resource" : "user",
"action" : "deactivate",
"objectId" : "22",
"objectType" : "user",
"description" : "Deactivated user",
"service" : "User service",
"appVersion" : "v1",
"requestId" : "db176f6b-b4c6-4a59-ac62-4d471eedf354"
"server" : "i0e5b5c88",
"serverLocation": "us-east-1",
"protocol" : "https",
"method" : "PATCH",
"statusCode" : "200"
}
谁能建议更好的架构来使用 Spring Boot 实现自定义审计日志?
这样我就可以从中提取有用的信息。
解决方案
推荐阅读
- javascript - 显示轴上的所有其他项目
- visual-studio-code - vs code c++扩展安装问题
- javascript - 如何获取用户 Google 助理操作的电子邮件
- python - Faster R-CNN 中的锚点大小调整
- ffmpeg - FFMPEG编码16bit视频数据结果为10bit
- java - 如何使用 Java 在 VS Code 中使用 DefaultAzureCredentials 进行身份验证?
- javascript - 将带有数组的对象转换为新对象并附加它
- javascript - 如何从api中获取数据?
- r - font_add_google 在使用 plot_grid 和保存时改变间距和对齐方式
- javascript - 如何根据更改 React 中的 useState 布尔值的函数打开 Modal?