问题标签 [seq-logging]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 使用属性丰富 Seq 日志语句,而不将它们包含在消息行中(使用 Serilog)
我正在将 Serilog 与 Seq 一起使用,并希望使用我自己的属性来丰富 Seq 中出现的日志记录。
如果我输入一个日志语句,如......
在序列中,我得到...
请注意,站点和活动值在 Seq 中显示为丰富的属性,但它们也显示在整体消息中。
如何记录我获得丰富属性的位置,但文本消息行中没有显示值?请注意,我有一个 NuGet 包,它为每个调用添加了一个 ThreadId。我希望 Site 和 Activity 属性位于丰富的道具列表中,但不一定打印在消息行中。
这个问题的答案可能还需要了解我们的应用程序。
该应用程序是一个 Windows 服务,它产生多个执行不同操作的活动。因此,Windows 服务会编排其中包含的各种活动。在时间表上,它只是在每个活动上调用“流程”以开始并做一些工作。每次流程被编排器调用时,我都需要该 Activity 的所有日志记录以自动包含 Site 和 Activity 值,如上所示(以及更多属性值,但我不希望它们全部打印在消息行中)。
因此,我们将看到的不是上面的条目,而是...注意消息现在只显示“ProcessCycle”。
.net-core - Serilog 将空白 CorrelationId 发送到 Seq 记录器
我在 .net 核心 web api 中使用 Serilog 和 Seq 来处理日志记录。我添加了对 Steve Gordon 的CorrelationId 中间件的引用,以从标题中获取 X-Correlation-ID(或创建新的)以更新 TraceIdentifier。
然后,我添加了另一个中间件类以将相关 ID 推送到日志上下文中,但这无法正常工作:
任何想法为什么?
serilog - 如何为 .NET Core 3.0 Worker 服务设置 serilog SEQ
日志正在工作,但它没有发布到我的本地 seq,我尝试添加 serilog 和 useSerilog 但它没有登录到我的本地服务:相关问题
.csproj
程序
appSettings.json:
}
我是否缺少一些配置或任何 Nuget 包?我已经在 ASP.NET Core API 中成功使用了 seq,但到目前为止还不能在工作服务中使用它。
android - 使用 USB 连接到手机将 Serilog 传输到 Seq 或文件?
我在 Android 和 Serilog 上使用 Xamarin( Xamarin.Android
,但也在寻找解决方案)。Xamarin.iOS
目前我正在登录到一个文件,如下所示:
然后applog.json
我从我的 android 手机或模拟器中手动adb
提取,并将其摄取到 Seq。
而不是这个手动过程,我想将日志数据直接发送到 Seq。但是,我的手机与运行 Seq 的计算机不在同一个网络上。相反,我的手机使用 USB 电缆(Android 调试模式)连接到我的计算机。有什么方法可以通过 USB 将日志数据发送到我计算机上的 Seq?我可以通过 USB 配置某种网络吗?
docker - 将 Seq 日志持久保存到 EBS 卷 - 卷不断分离
我在 AWS EC2 实例上运行 Seq docker 映像。
为了将日志写入持久存储,我已将 EBS 卷附加到实例,并使用 rexray/ebs 插件从实例中安装它:
docker plugin install rexray/ebs:latest REXRAY_PREEMPT=true EBS_REGION=eu-central-1a --grant-all-permissions EBS_ACCESSKEY=... EBS_SECRETKEY=...
docker volume create --driver rexray/ebs --name SeqData
然后指示 Seq 使用该卷:
docker run -d --name seq -e ACCEPT_EULA=Y -v SeqData:/data -p 80:80 -p 5341:5341 datalust/seq:latest
Seq 运行良好一段时间(有时几个小时,有时几天),然后我注意到容器不再运行,AWS 控制台显示卷已分离。AWS 日志显示实例启动了 DetachVolume 事件。
我在 AWS 控制台中手动重新附加卷,然后重新启动容器。Seq 恢复其正常操作,然后在一段时间后该现象再次出现。
码头工人日志没有给出任何提示。它仅显示 Seq 大约每 5 分钟记录一次其正常活动(保留、索引等) - 直到分离发生前大约 10 分钟。
我在 AWS 或 Docker 方面的经验有限,所以如果有人能帮助我,我将不胜感激。
docker - 带有 Docker 的 Serilog Seq Sink 未捕获事件
我在 Windows 10 Professional 上的 Net Core 3.1 上运行 Web api 和控制台应用程序。我有控制台、文本文件、json 文件、mssql 和 seq 的接收器。它们每个都记录所有事件,除了 seq 不记录任何事件。
我使用以下命令安装了 Docker:
docker run -d --restart unless-stopped --name seq -e ACCEPT_EULA=Y -v D:\Logs\Seq:/data -p 8081:80 datalust/seq:latest
我使用以下代码创建了记录器:
我在 D:\Logs\Seq 目录中的 seq.json 文件中看到以下内容:
我还看到每分钟写入的日志文件,但它们都没有从 web api 或控制台应用程序捕获事件。
当我去 时localhost:8081
,我会收到一条"localhost refused to connect."
消息。
我怀疑我的端口号错误,但我不知道。它们在 1) docker 设置、2) seq.json 值、3) 记录器创建之间应该不同还是相同?
c# - Seq API:使用集成安全进行身份验证?
如果没有在我的 Seq 实例上启用身份验证,我完全可以从 powershell 使用它,也就是说,以下只是有效的:
Invoke-RestMethod "https://myseqinstance/api/dashboards?shared"
但是,既然我已经启用了 Active Directory 身份验证并为自己添加了登录名,我仍然可以访问 Seq UI,但调用 API 失败。
Invoke-RestMethod "https://myseqinstance/api/dashboards?shared" -UseDefaultCredentials
现在这会产生 HTTP 401 - Unauthorized 错误。
我想我可能需要登录,所以我尝试了以下 HTTP GET 和 POST
所以两者都不起作用,即使集成安全性应该是可能的......如何使用集成安全性对 Seq API 进行身份验证?
c# - Seq serilog 指定/覆盖日志序列化
查看 SEQ Serilog 文档,并且有关于解构和创建自定义ITextFormatter的文档,这似乎是开始的地方,但我想知道是否以及如何将底层日志序列化更改为 UTF8、UTF32、Unicode , ETC。
可能的?如果可以更改,对当前日志原始序列化的影响。
我目前正在使用 Seq 5.1.3004
asp.net-core - 如何使用 Seq sink 配置 Serilog aspnetcore?
我无法从我的 IIS 托管的 .net core 2.2 应用程序中获取 Seq 中的日志语句。当我使用 IISExpres 调试和运行应用程序时,会出现这些日志。但是,当应用程序从真实 IIS 的应用程序池运行时,只有 RequestLogging 日志显示在 Seq 中。我想念我的日志。
这是我所做的:
已安装 Nuget 包 Serilog、Serilog.Aspnetcore 和 Serilog.Sinks.Seq。
删除了所有 Microsoft.Extensions.Logging 和引用。
按照 Serilog.Aspnetcore Github 页面上的示例在 Program.cs 中实施内联配置:
- 在 Startup.cs 中添加了请求日志记录:
- 在 appsettings.json 中配置了 Serilog,因此 apiKey 和 Seq serverUrl 可以在 Azure DevOps 部署中配置用于开发、测试和生产环境:
- 像往常一样在类中添加记录器和初始化,如下所示:
asp.net-core - 从命令行运行 Seq 会导致 HttpSysException “访问被拒绝”
当我尝试以普通用户身份从常规命令行运行Seq
seq run --nologo --listen="http://localhost:5435/" --storage="C:\\temp\\Seq"
我得到以下异常
做与管理员相同的事情就可以了,但是在使用添加 URL 之后
netsh http add urlacl url=https://+:5435/ user=MyDomain\MyUser
当我运行 Seq 时,我得到一个不同的异常:
如何在域中的计算机上以普通用户身份从命令行运行 Seq?