国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

『SEQ日志』在 .NET中快速集成輕量級的分布式日志平臺

這篇具有很好參考價值的文章主要介紹了『SEQ日志』在 .NET中快速集成輕量級的分布式日志平臺。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

『SEQ日志』在 .NET中快速集成輕量級的分布式日志平臺,# 『ASP.NET』?,.netcore,分布式,日志,SEQ

『SEQ日志』在 .NET中快速集成輕量級的分布式日志平臺,# 『ASP.NET』?,.netcore,分布式,日志,SEQ
??讀完這篇文章里你能收獲到

  • 如何在Docker中部署 SEQ:介紹了如何創(chuàng)建和運(yùn)行 SEQ 容器,給出了詳細(xì)的執(zhí)行操作
  • 如何使用 NLog 接入 .NET Core 應(yīng)用程序的日志:詳細(xì)介紹了 NLog 和 NLog.Seq 來配置和記錄日志的步驟
  • 日志記錄示例:博客提供了一個簡單的日志記錄示例,展示了如何在應(yīng)用程序中使用 NLog 記錄日志發(fā)送到SEQ

『SEQ日志』在 .NET中快速集成輕量級的分布式日志平臺,# 『ASP.NET』?,.netcore,分布式,日志,SEQ

『SEQ日志』在 .NET中快速集成輕量級的分布式日志平臺,# 『ASP.NET』?,.netcore,分布式,日志,SEQ
摘要:本文介紹了如何使用SEQ來進(jìn)行.NET Core應(yīng)用程序的日志記錄和查詢。首先,我們將了解SEQ的基本概念和功能。然后,我們會詳細(xì)說明如何在.NET Core應(yīng)用程序中配置和部署SEQ,并通過示例代碼演示如何實現(xiàn)日志記錄和查詢。

一、簡介

SEQ是一款功能強(qiáng)大的日志管理工具,它提供了易于使用的Web界面和靈活的查詢語法,幫助開發(fā)人員更好地理解和分析應(yīng)用程序的日志信息。在本文中,我們將使用SEQ來記錄和查詢.NET Core應(yīng)用程序的日志。
『SEQ日志』在 .NET中快速集成輕量級的分布式日志平臺,# 『ASP.NET』?,.netcore,分布式,日志,SEQ

『SEQ日志』在 .NET中快速集成輕量級的分布式日志平臺,# 『ASP.NET』?,.netcore,分布式,日志,SEQ

二、SEQ部署

1. 下載SEQ Docker鏡像

sudo docker pull datalust/seq:latest

2. 生成SEQ密碼

PH=$(echo 'password' |sudo docker run --rm -i datalust/seq config hash)

3. 創(chuàng)建SEQ容器

sudo mkdir -p data/logs

sudo docker run \
  --name seq \
  -d \
  --restart unless-stopped \
  -e ACCEPT_EULA=Y \
  -e SEQ_FIRSTRUN_ADMINPASSWORDHASH="$PH" \
  -v /data/log-prod:/data \
  -p 8001:80 \
  -p 5341:5341 \
  --memory=16g  \
  --memory-swap=16g  \
  datalust/seq

上面的docker運(yùn)行腳本中有幾個點需要注意的:

  • Seq存儲的數(shù)據(jù)包括元數(shù)據(jù)和事件數(shù)據(jù),元數(shù)據(jù)指用戶信息、Seq配置等數(shù)據(jù),事件數(shù)據(jù)指收集到的日志數(shù)據(jù)。這兩種數(shù)據(jù)默認(rèn)都是直接存儲在磁盤上的,所以在容器啟動時,需要將數(shù)據(jù)存儲的路徑映射到宿主機(jī)上。事件數(shù)據(jù)只能存儲在磁盤上,而元數(shù)據(jù)有需要的話可以存儲到sqlserver或者postgresql,可以在容器啟動之后進(jìn)入容器對元數(shù)據(jù)進(jìn)行遷移,可以在容器啟動時通過環(huán)境變量的方式指定存儲路徑,如下:
-e SEQ_METASTORE_POSTGRES_CONNECTIONSTRING="Host=localhost;Port=5432;Database=seq"
  • Seq實例在不指定最大內(nèi)存的情況下會盡可能的占用宿主機(jī)盡可能多的內(nèi)存,為了保證實例能夠穩(wěn)定運(yùn)行,不會因為內(nèi)存問題退出或者被殺掉,也為了不影響其他應(yīng)用,可以為seq實例設(shè)置可用的最大內(nèi)存,而通過seq提供的環(huán)境變量SEQ_CACHE_SYSTEMRAMTARGET可以配置seq是否使用緩存,在為seq容器分配的內(nèi)存比較少的情況下,可以不適應(yīng)緩存。

4. 訪問SEQ Web界面

SEQ容器啟動后,打開瀏覽器并輸入http://localhost:8001,即可進(jìn)入SEQ的Web界面。
image.png

5. 創(chuàng)建日志源APP Key

在SEQ的Web界面中,我們需要為每個應(yīng)用程序創(chuàng)建一個獨立的日志源。通過點擊界面右上角的"Add +"按鈕,可以創(chuàng)建一個新的日志源,并記錄下該日志源的API密鑰,以便后續(xù)在.NET Core應(yīng)用程序中進(jìn)行配置。
image.png
image.png

『SEQ日志』在 .NET中快速集成輕量級的分布式日志平臺,# 『ASP.NET』?,.netcore,分布式,日志,SEQ

三、.NET Core接入(NLog)

1. 添加依賴包

在.NET Core應(yīng)用程序的項目文件中,添加NLog和NLog.Seq的NuGet包引用??梢允褂靡韵旅钤陧椖课募刑砑覰uGet包引用:

dotnet add package NLog
dotnet add package NLog.Web.AspNetCore
dotnet add package NLog.Targets.Seq

2. 配置nlog.config

<?xml version="1.0" encoding="utf-8" ?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      autoReload="true"
      internalLogLevel="info"
      throwConfigExceptions="true">

	<extensions>
		<add assembly="NLog.Web.AspNetCore"/>
		<add assembly="NLog.Targets.Seq"/>
	</extensions>

	<variable name="OwnWebLayout"
			  value="${longdate}|${event-properties:item=EventId_Id}|${uppercase:${level}}|${logger}|${message} ${exception:format=tostring}|url: ${aspnet-request-url}|action: ${aspnet-mvc-action}"/>

	<targets async="true">
		<target name="seq" xsi:type="BufferingWrapper" bufferSize="1000" flushTimeout="2000">
			<target xsi:type="Seq" serverUrl="http://localhost:5341" apiKey="" >
				<property name="MachineName" value="${machinename}" />
				<property name="LogType" value="${event-properties:item=LogType}" />
			</target>/>
		</target>
	</targets>

	<rules>
		<logger name="*" minlevel="Debug" writeTo="seq" />
	</rules>
</nlog>

3. 在Startup.cs文件中啟用NLog

using NLog.Extensions.Logging;

public class Startup
{
    public void ConfigureServices(IServiceCollection services)
    {
        // 其他配置...

        // 啟用NLog
        services.AddLogging(loggingBuilder =>
        {
            loggingBuilder.ClearProviders();
            loggingBuilder.SetMinimumLevel(Microsoft.Extensions.Logging.LogLevel.Trace);
            loggingBuilder.AddNLog();
        });
    }
}

4. 日志記錄

private readonly ILogger<HomeController> _logger;

public HomeController(ILogger<HomeController> logger)
{
    _logger = logger;
}

public IActionResult Index()
{
    _logger.LogInformation("Index page visited");

    // 應(yīng)用程序邏輯...

    return View();
}

『SEQ日志』在 .NET中快速集成輕量級的分布式日志平臺,# 『ASP.NET』?,.netcore,分布式,日志,SEQ

四、SEQ查詢

1. 事件查詢

在SEQ的Web界面中,可以使用簡單而強(qiáng)大的查詢語法來過濾和分析日志。例如,可以通過關(guān)鍵詞、日期范圍或其他屬性進(jìn)行過濾。以下是一些常用的查詢示例:

  • 查詢包含特定關(guān)鍵詞的日志:“關(guān)鍵詞”
  • 查詢特定級別的日志:@Level = “級別”

image.png

2. 看板制作

image.png

『SEQ日志』在 .NET中快速集成輕量級的分布式日志平臺,# 『ASP.NET』?,.netcore,分布式,日志,SEQ

五、總結(jié)

本文介紹了如何使用SEQ來記錄和查詢.NET Core應(yīng)用程序的日志。通過部署SEQ并在.NET Core應(yīng)用程序中配置日志記錄,可以輕松地將應(yīng)用程序的日志發(fā)送到SEQ中,并使用SEQ的強(qiáng)大查詢功能對日志進(jìn)行分析和篩選。希望本文能幫助你更好地管理和利用應(yīng)用程序的日志信息。

  • 附SEQ官方的文檔:https://docs.datalust.co/docs

『SEQ日志』在 .NET中快速集成輕量級的分布式日志平臺,# 『ASP.NET』?,.netcore,分布式,日志,SEQ

『SEQ日志』在 .NET中快速集成輕量級的分布式日志平臺,# 『ASP.NET』?,.netcore,分布式,日志,SEQ文章來源地址http://www.zghlxwxcb.cn/news/detail-669155.html

到了這里,關(guān)于『SEQ日志』在 .NET中快速集成輕量級的分布式日志平臺的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 初識輕量級分布式任務(wù)調(diào)度平臺 xxl-job

    初識輕量級分布式任務(wù)調(diào)度平臺 xxl-job

    大家好,這里是 Rocky 編程日記 ,喜歡后端架構(gòu)及中間件源碼,目前正在閱讀 xxl-job 源碼。同時也把自己學(xué)習(xí)該 xxl-job 筆記,代碼分享出來,供大家學(xué)習(xí)交流,如若筆記中有不對的地方,那一定是當(dāng)時我的理解還不夠,希望你能及時提出。 如果對于該筆記存在很多疑惑,歡迎

    2024年02月10日
    瀏覽(2161)
  • Springboot集成輕量級內(nèi)存數(shù)據(jù)庫H2

    最近做一個小項目,需要存儲的數(shù)據(jù)不多,用mysql太重了,用其他的Redis之類的也不太方便,然后就想到了H2,他就是一個jar包,可以和項目一起打包發(fā)布,非常適合數(shù)據(jù)量不多的微小系統(tǒng),下面大概介紹下H2的基本知識和Springboot的集成 H2是一個用Java開發(fā)的嵌入式數(shù)據(jù)庫,它本

    2024年02月07日
    瀏覽(17)
  • 【架構(gòu)】K8s中部署輕量級日志系統(tǒng)Loki

    【架構(gòu)】K8s中部署輕量級日志系統(tǒng)Loki

    Loki 是什么? Loki是由Grafana Labs開源的一個水平可擴(kuò)展、高可用性,多租戶的日志聚合系統(tǒng)的日志聚合系統(tǒng)。它的設(shè)計初衷是為了解決在大規(guī)模分布式系統(tǒng)中,處理海量日志的問題。Loki采用了分布式的架構(gòu),并且與Prometheus、Grafana密切集成,可以快速地處理大規(guī)模的日志數(shù)據(jù)。

    2024年02月20日
    瀏覽(24)
  • Kubernetes輕量級日志工具Loki安裝及踩坑記錄

    Kubernetes輕量級日志工具Loki安裝及踩坑記錄

    Loki是Grafana出品的一個輕量級日志系統(tǒng),熟悉ELK的都知道ELK使用起來的成本,而且僅僅是日志檢索使用ELK的話有點大材小用了。Loki8技術(shù)棧中使用了以下組件。 Promtail 用來將容器日志發(fā)送到 Loki 或者 Grafana 服務(wù)上的日志收集工具,該工具主要包括發(fā)現(xiàn)采集目標(biāo)以及給日志流添

    2024年02月03日
    瀏覽(23)
  • .NET超簡單輕量級的HTTP請求組件Flurl

    簡介 Flurl是一個用于構(gòu)建基于HTTP請求的C#代碼的庫。它的主要目的是簡化和優(yōu)雅地處理網(wǎng)絡(luò)請求(只用很少的代碼完成請求)。Flurl提供了一種簡單的方法來構(gòu)建GET、POST、PUT等類型的請求,以及處理響應(yīng)和異常。它還提供了一些高級功能,如鏈?zhǔn)秸{(diào)用、緩存請求結(jié)果、自動重

    2024年02月08日
    瀏覽(90)
  • Net 高級調(diào)試之十:輕量級代碼生成的調(diào)試

    Net 高級調(diào)試之十:輕量級代碼生成的調(diào)試

    一、簡介 今天是《Net 高級調(diào)試》的第十篇文章。說起來,高級調(diào)試,調(diào)試的內(nèi)容還是挺多的,技巧也不少,但是,要想做一個合格的高級調(diào)試人員,還需要掌握如何調(diào)試動態(tài)生成的IL代碼。今天要探討的高級調(diào)試的技巧是如何調(diào)試通過 Emit 動態(tài)生成 IL 代碼??赡苡腥藭?,

    2024年02月05日
    瀏覽(95)
  • 開源輕量級分布式文件系統(tǒng)FastDFS本地部署并實現(xiàn)遠(yuǎn)程訪問服務(wù)器

    開源輕量級分布式文件系統(tǒng)FastDFS本地部署并實現(xiàn)遠(yuǎn)程訪問服務(wù)器

    FastDFS是一個開源的輕量級分布式文件系統(tǒng),它對文件進(jìn)行管理,功能包括:文件存儲、文件同步、文件訪問(文件上傳、文件下載)等,解決了大容量存儲和負(fù)載均衡的問題。特別適合以文件為載體的在線服務(wù),如相冊網(wǎng)站、視頻網(wǎng)站等等。 FastDFS為互聯(lián)網(wǎng)量身定制,充分考

    2024年02月04日
    瀏覽(116)
  • LLM-Client一個輕量級的LLM集成工具

    LLM-Client一個輕量級的LLM集成工具

    大型語言模型(llm)已經(jīng)徹底改變了我們與文本交互的方式,OpenAI、Google、AI21、HuggingfaceHub、Anthropic和眾多開源模型提供了不同的功能和優(yōu)勢。但是每個模型都有其獨特的體系結(jié)構(gòu)、api和兼容性需求,集成這些模型是一項耗時且具有挑戰(zhàn)性的任務(wù)。 所以這時候LangChain就解決了這

    2024年02月11日
    瀏覽(98)
  • 輕量級.net standard微信支付登錄Nuget開源庫

    輕量級.net standard微信支付登錄Nuget開源庫

    我個人編寫的庫,在我個人網(wǎng)站,小程序等很多地方都在使用中,大家可以搜索小程序 什邡市宅貓君網(wǎng)絡(luò)工作室 或者到我的網(wǎng)站 store.zhaimaojun.cn?去體驗支付和登錄效果。 本庫主要實現(xiàn)了native pay(二維碼支付)jsapi pay(小程序直接調(diào)起支付),需要注意的是這是基于api3的,

    2024年03月15日
    瀏覽(28)
  • 10 分鐘在K8s 中部署輕量級日志系統(tǒng) Loki

    10 分鐘在K8s 中部署輕量級日志系統(tǒng) Loki

    轉(zhuǎn)載至我的博客 https://www.infrastack.cn ,公眾號:架構(gòu)成長指南 Loki 是什么? Loki是由Grafana Labs開源的一個水平可擴(kuò)展、高可用性,多租戶的日志聚合系統(tǒng)的日志聚合系統(tǒng)。它的設(shè)計初衷是為了解決在大規(guī)模分布式系統(tǒng)中,處理海量日志的問題。Loki采用了分布式的架構(gòu),并且與

    2024年02月21日
    瀏覽(29)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包