Web services 使用Web服务记录客户端日志输出NoDB

Web services 使用Web服务记录客户端日志输出NoDB,web-services,serilog,getseq,Web Services,Serilog,Getseq,我有一个运行在内联网上的WPF应用程序,所有与DBs的通信都是通过RESTWebServices完成的。因为出于审计目的,我需要将用户活动(从信息到致命日志的日志)存储到NoDb实例(Seq或RavenDB)。我看到了,而且似乎做了这项工作的一部分。我如何将这些信息发送到Seq/RavenDB?他们公开API吗 另一个问题是关于可靠性,您认为拥有冗余/平衡审计Web服务的最佳方法是什么?最好使用不需要太多工作的配置 谢谢1)如果您需要使用web服务,您的web服务可以通过HTTP/S向Seq发布

我有一个运行在内联网上的WPF应用程序,所有与DBs的通信都是通过RESTWebServices完成的。因为出于审计目的,我需要将用户活动(从信息到致命日志的日志)存储到NoDb实例(Seq或RavenDB)。我看到了,而且似乎做了这项工作的一部分。我如何将这些信息发送到Seq/RavenDB?他们公开API吗

另一个问题是关于可靠性,您认为拥有冗余/平衡审计Web服务的最佳方法是什么?最好使用不需要太多工作的配置

谢谢

1)如果您需要使用web服务,您的web服务可以通过HTTP/S向Seq发布事件-API文档位于:(强烈建议在此场景中使用批处理事件)

2) 如果您可以避免“web服务”的字面解释,而只是在公开web服务的服务器上建立另一个HTTP端点,那么您可以安装Seq以侦听URL前缀,如,这允许其他服务侦听其他端点,如。。。有关此设置的文档如下所示:

3) 同样在Seq的情况下,如果您通过Serilog发送事件,您可以设置两个Seq服务器并将其记录到这两个服务器:

.WriteTo.Seq("https://primary-seq")
.WriteTo.Seq("https://backup-seq")
在这种情况下,所有日志搜索等都需要在主实例上进行,因为配置数据(权限等)不会在它们之间复制

您也可以考虑使用一个或两个连接的 BuffelBaseFrimeNe>代码,这将在文件中本地缓冲事件,从而容忍某些服务器停机时间。

如果您的审计要求是事务性的(即合法性/符合性),您可能仍然应该考虑将这些事务写入到SQL数据库中,如果您有一个。

< P > 1)如果您需要使用Web服务,则Web服务可以通过HTTP/S- API API将事件提交到SEQ:(强烈建议在此场景中批处理事件)

2) 如果您可以避免“web服务”的字面解释,而只是在公开web服务的服务器上建立另一个HTTP端点,那么您可以安装Seq以侦听URL前缀,如,这允许其他服务侦听其他端点,如。。。有关此设置的文档如下所示:

3) 同样在Seq的情况下,如果您通过Serilog发送事件,您可以设置两个Seq服务器并将其记录到这两个服务器:

.WriteTo.Seq("https://primary-seq")
.WriteTo.Seq("https://backup-seq")
在这种情况下,所有日志搜索等都需要在主实例上进行,因为配置数据(权限等)不会在它们之间复制

您也可以考虑使用一个或两个连接的 BuffelBaseFrimeNe>代码,这将在文件中本地缓冲事件,从而容忍某些服务器停机时间。

如果您的审计要求是事务性的(即合法性/合规性),您可能仍然应该考虑将这些事务写入到SQL数据库中,如果您有一个,则