elasticsearch 我应该使用elasticsearch查找审核日志吗?,elasticsearch,database-design,auditing,audit-logging,elasticsearch,Database Design,Auditing,Audit Logging" /> elasticsearch 我应该使用elasticsearch查找审核日志吗?,elasticsearch,database-design,auditing,audit-logging,elasticsearch,Database Design,Auditing,Audit Logging" />

elasticsearch 我应该使用elasticsearch查找审核日志吗?

elasticsearch 我应该使用elasticsearch查找审核日志吗?,elasticsearch,database-design,auditing,audit-logging,elasticsearch,Database Design,Auditing,Audit Logging,我正在微服务体系结构中构建一个应用程序。因此,我在不同的微服务上运行不同的商业模式 微服务使用图形和文档数据库 我要做的是,每当对象发生更改时,我需要保留所有关于对象的审核日志有两种方法可以做到这一点,我想到了两种: 每当对象发生更改时,在每个数据库中存储审核日志 不要将其本地化,而是将其放在一个中央存储库中,在那里我们可以看到整个应用程序的所有审计都在后台 场景应用程序由微服务提供服务,但在前面是 只需为用户和我们提供一个应用程序。弹性搜索是否可行 是否用于长期储存?或者我们有其他的 解决方案

我正在微服务体系结构中构建一个应用程序。因此,我在不同的微服务上运行不同的商业模式

微服务使用图形和文档数据库

我要做的是,每当对象发生更改时,我需要保留所有关于对象的审核日志有两种方法可以做到这一点,我想到了两种:

  • 每当对象发生更改时,在每个数据库中存储审核日志
  • 不要将其本地化,而是将其放在一个中央存储库中,在那里我们可以看到整个应用程序的所有审计都在后台 场景应用程序由微服务提供服务,但在前面是 只需为用户和我们提供一个应用程序。弹性搜索是否可行 是否用于长期储存?或者我们有其他的 解决方案
  • 还有哪些方法是我必须遵循的最佳实践。我的目标最终是确定对象中什么东西被谁改变了


    干杯

    一般建议不要将ES用作权威数据存储。如果您希望审计数据具有99.99%的可靠性,请将其存储在其他地方,并在需要其搜索功能时在ES中编制索引

    根据我的经验,ES是相当有弹性的,但我仍要记住,与众所周知的关系数据库或Cassandra/HDFS相比,它的存储并没有那么完美,我不会在那里存储重要数据


    还要记住,ES索引不是很灵活,如果您想重缩放集群或更改字段映射,您可能需要重新索引所有内容。较新版本的ES提供“Reindex API”,但它仍然是一个弱点。

    我曾考虑将其保留为权威数据存储,并为此维护所有数据审核。当你提到可靠性时,ES不能提供吗?列出了有关弹性的注意事项。我不认为你可以用某个百分比来表达这一点。审计/安全日志记录也是Elasticsearch的常见用例:我正在寻找类似的东西。您的决定是什么,有什么优点/缺点。我们继续使用数据库,将审核存储在microservice db中。然后对每个服务审核的视图应用过滤器。