微服務分佈式日誌-ExceptionLess篇

1、Exceptionless 簡介git

Exceptionless 是一個開源的實時的日誌收集框架,它能夠應用在基於 ASP.NET,ASP.NET Core,Web Api,Web Forms,WPF,Console,MVC 等技術棧的應用程序中,而且提供了Rest接口能夠應用在 Javascript,Node.js 中。它將日誌收集變得簡單易用而且不須要了解太多的相關技術細節及配置。
在之前,咱們作日誌收集大多使用 Log4net,Nlog 等框架,在應用程序變得複雜而且集羣的時候,可能傳統的方式已經不是很好的適用了,由於收集各個日誌而且分析他們將變得麻煩並且浪費時間。
如今Exceptionless團隊給咱們提供了一個更好的框架來作這件事情,我認爲這是很是偉大而且有意義的,感謝他們。
就讓咱們一塊兒來看看吧。github

官網:http://exceptionless.com/windows

GitHub:https://github.com/exceptionless/Exceptionlessapi

2、ExceptionLess使用方式服務器

*  可在https://be.exceptionless.io直接申請試用,試用版有限制,天天最多3000條錯誤日誌,如需更多使只能購買付費。

 *  ExceptionLess開源的分佈式日誌框架,可經過github下載安裝,搭建徹底屬於本身的分佈式日誌。

3、安裝使用效果
* 首頁

* 異常明細頁
app

還有更多,如快速搜索、錯誤郵件通知等功能就在此列舉......

4、App.config 文件配置框架

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <section name="nlog" type="NLog.Config.ConfigSectionHandler, NLog" />
    <section name="exceptionless" type="Exceptionless.ExceptionlessSection, Exceptionless" />
  </configSections>
  <startup>
    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.6.1" />
  </startup>
  <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <extensions>
          <add assembly="Exceptionless.NLog" />
    </extensions>
      <targets async="true">
      <!--默認鏈接官網exceptionLess start -->
      <!--<target xsi:type="Exceptionless" name="exceptionless" apiKey="h8C1yN1CfmvHH6wxzNW4JxBEc78N4BfBvJI1mayz">
                      <field name="host" layout="${machinename}" />
                      <field name="identity" layout="${identity}" />
                      <field name="windows-identity" layout="${windows-identity:userName=True:domain=False}" />
                      <field name="process" layout="${processname}" />
        </target>-->
      <!--默認鏈接官網exceptionLess end -->
        
      <!--本地服務器 start -->
      <target xsi:type="Exceptionless" name="exceptionless" apiKey="7BvRwz9RohyG1Bz98TFxKdJX75ZzOCHLQNLwmpqT" serverUrl="http://XX.XX.XX.XX:50000/">
        <field name="host" layout="${machinename}" />
        <field name="identity" layout="${identity}" />
               <field name="windows-identity" layout="${windows-identity:userName=True:domain=False}" />
               <field name="process" layout="${processname}" />
      </target>
      <!--本地服務器 end -->

      <!--正常寫日誌-->
      <target name="console" type="ColoredConsole" encoding="utf-8" layout="${longdate}|${level:uppercase=true}|${logger}|${message}" useDefaultRowHighlightingRules="true"/>
      <target name="file" type="File" encoding="utf-8" fileName="${basedir}/logs/Trade-${shortdate}.log" layout="${longdate}|${level:uppercase=true}|${logger}|${message}" />
    </targets>
      <rules>
      <!--exceptionless start 日誌-->
      <logger name="*" minlevel="Trace" writeTo="exceptionless" />
      <logger name="*" minlevel="Info" writeTo="exceptionless" />
      <!--exceptionless end 日誌-->
        
      <!--正常輸出 start -->
      <logger name="*" minlevel="Debug" writeTo="console" />
      <logger name="*" minlevel="Warn" writeTo="file" />
      <!--正常輸出 end -->
    </rules>
  </nlog>
</configuration>

5、源代碼地址:
* 連接: https://pan.baidu.com/s/15rEzv-gwwa0znVscPQ2mlg 密碼: ecm6less

相關文章
相關標籤/搜索