.Net Core的Log方式:Serilog+Kibana

來源:互聯網
上載者:User

標籤:mes   .com   base   前言   sink   tps   cep   選擇   arc   

前言

Serilog,支援對象,把log資料序列化成Json,好用方便,容易拓展。Github: https://github.com/handsomeyao77/serilog-sinks-elasticsearch

讀取設定檔的

設定檔分為App.config和appsetting.json兩種。
讀取appsettings.json,主要是Web app 類型,首先在服務啟動時要注入json檔案:

讀取配置:

配置App.config,高亮部分是必要的key:

讀取配置:

當然,有時候可以Hard code,這裡分享一種方式:

Serilog的常見類型

1.Information.

2.Debug.

3.Error.

因為LogEventBase作為基類,可以繼承拓展一下。

public class LogEventBase{    [FieldOrder(0)]    public LogEventType EventType { get; set; }    [FieldOrder(1)]    public string Role { get; set; }    [FieldOrder(2)]    public string RoleInstance { get; set; }    [FieldOrder(3)]    public string Ip { get; set; }    [FieldOrder(4)]    public int Port { get; set; }    [FieldOrder(5)]    public DateTime Timestamp => DateTime.UtcNow;    [FieldOrder(6)]    public string Message { get; set; }    [FieldOrder(7)]    public IActivity Activity { get; set; }    [FieldOrder(8)]    public string EnvironmentName => Environment.MachineName;}

根據業務拓展:

public class LatencyEvent : LogEventBase{    [FieldOrder(9)]    public long Latency { get; set; }    [FieldOrder(10)]    public string SearchId { get; set; }}public class SearchEvent : LogEventBase{    [FieldOrder(9)]    public string SearchId { get; set; }    [FieldOrder(10)]    public string SearchString { get; set; }}public class LuisEvent : LogEventBase{    [FieldOrder(9)]    public LuisResult LuisResult { get; set; }}public class ExceptionEvent : LogEventBase{    [FieldOrder(10)]    public Exception Exception { get; set; }}

LogEventType是比較實用的,在kibana查看log是作為過濾條件能節省很多時間。

使用方法1.Information

2.Error

Kibana

開啟kibana首頁,選擇對應的template,可以說非常好用的log工具。可以按照log的時間,或者輸入查詢條件:

或者按照LogEventType,可以快速定位到target:

.Net Core的Log方式:Serilog+Kibana

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.