【问题标题】:Microservice between my own application and a logging application to structure logging我自己的应用程序和日志记录应用程序之间的微服务来构建日志记录
【发布时间】:2017-09-08 20:56:23
【问题描述】:

我试图找到一个很好的例子来解释我如何构建一个微服务,我可以将它放在我自己的应用程序和像 seq 这样的日志记录应用程序之间。通过这种方式,我将尝试将日志记录数据放在同一个目的地,这样我就可以轻松地从那些日志记录应用程序切换,因此我不必编辑我的整个代码。有没有办法做到这一点,也许有一个例子可以解释这一点。我已经用谷歌搜索过了,但没有找到任何明确的解释。

【问题讨论】:

  • 要求我们推荐或查找教程的问题与 Stack Overflow 无关。另外,您的问题听起来有点像您最好去了解 SOA,然后了解什么是微服务以及导致使用它们的架构条件。
  • 为什么你需要microservice 呢?也许您可以简单地在应用程序端为您的日志框架使用特定的日志适配器,例如,Serilog 的适配器
  • 像 Serilog 和 NLog 这样的现代日志库有多个输出(接收器或目标),它们可以登录,不需要微服务。通常可以通过修改配置文件来控制他们登录的位置。似乎您正在尝试发明一种新的解决方案,而不是使用现有的解决方案。
  • 我知道 SOA 可能会更好。这是我明年的实习,公司要求提供微服务。这就是为什么我在这里要求一些技巧和一些例子。

标签: c# microservices


【解决方案1】:

在我看来,为此构建微服务是不必要的架构复杂化。

对于解耦,您可以简单地将Serilog 接收器用于Seq

SerilogSeq 有接收器:
https://github.com/serilog/serilog-sinks-seq
https://www.nuget.org/packages/Serilog.Sinks.Seq/

log4netNLog 这里还有 Seq 附加程序 https://github.com/datalust/seq-client

【讨论】:

  • 谢谢,我去看看!
【解决方案2】:

您可以创建微服务来登录数据库,该数据库将托管在您的应用程序可以访问的某个地方。目前我已经用统一容器和 NancyFx 创建了控制台应用程序。您可能想根据您的要求进一步探索。除了一般问题,您能否分享有关技术问题的任何详细信息。

【讨论】:

  • 这没有回答问题。
  • 感谢您的回答。这是我明年的实习。该公司想要一个微服务,但我已经向他们推荐了 SOA,所以我希望你对微服务有一些好的提示和建议。技术问题是他们的日志数据现在以不同的来源结束,因此他们希望将其放在一个中心点,并且他们希望轻松地从日志应用程序切换。我只是不知道 In 如何使用微服务做到这一点。
  • @Yannick:请与企业架构师交谈。
  • @QualityCatalyst 我是一名初级软件工程师,所以我不知道在哪里可以这么快找到架构师。我所理解的是 SOA 可能是比微服务更好的解决方案,所以我将看看 SOA。我已经在学校用过这个,所以我知道基础知识。
  • @QualityCatalyst 那里可能有架构师,但他们想要微服务的主要原因是因为其中一位程序员推荐它(他认为它更好、更快等)。我知道他没有进一步研究,所以我也在寻找更好的解决方案。
猜你喜欢
  • 1970-01-01
  • 2010-12-28
  • 2014-10-01
  • 1970-01-01
  • 1970-01-01
  • 2016-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多