C# 中使用 Exceptionless的方法
背景
“Exceptionless”一詞的定義是:無例外。Exceptionless可為您的JavaScript,Node,.NET Core,ASP.NET,Web API,WebForms,WPF,控制臺(tái)和MVC應(yīng)用程序提供實(shí)時(shí)錯(cuò)誤報(bào)告。它將收集到的信息組織成簡(jiǎn)單的可操作數(shù)據(jù),這些數(shù)據(jù)將幫助您的應(yīng)用程序變得異常異常!
Exceptionless專注于實(shí)時(shí)可配置性,這使其與其他錯(cuò)誤監(jiān)視服務(wù)區(qū)分開來。如果其他人可能需要更改代碼中的配置并重新部署應(yīng)用程序,則Exceptionless允許您進(jìn)行更改而無需更改已部署的代碼。
入門
Exceptionless為您提供跟蹤錯(cuò)誤,日志和事件的工具,同時(shí)指導(dǎo)您尋求可行的解決方案。首先,您需要確定自己是無主機(jī)例外還是使用我們的托管版本。如果您選擇使用我們的托管版本,則可以免費(fèi)開始使用。
托管選項(xiàng)
創(chuàng)建一個(gè)帳戶
注冊(cè)后,系統(tǒng)將提示您創(chuàng)建第一個(gè)項(xiàng)目。
通過單擊項(xiàng)目列表頁(yè)面上的“下載并配置客戶端”操作按鈕來配置您的應(yīng)用程序。
選擇您的項(xiàng)目類型,然后按照說明進(jìn)行操作。
您的應(yīng)用程序現(xiàn)在將自動(dòng)將所有未處理的錯(cuò)誤發(fā)送到Exceptionless服務(wù)。
您還可以發(fā)送已處理的錯(cuò)誤,功能使用或日志消息以及其他信息(請(qǐng)參閱特定客戶端的文檔)。
自托管選件
我們整理了綜合的文檔,以幫助您開始使用自托管的Exceptionless實(shí)例。您可以在此處找到該文檔。
發(fā)送您的第一個(gè)賽事#
一旦確定了帳戶并創(chuàng)建了項(xiàng)目,就可以開始接收事件。讓我們看一下向Exceptionless發(fā)送一個(gè)簡(jiǎn)單的事件。
開機(jī)自檢 api/v2/events
curl --location --request POST "https://api.exceptionless.com/api/v2/events" \
--header 'Authorization: Bearer YOUR_PROJECT_TOKEN' \
--header 'Content-Type: application/json' \
--data-raw '{ "type": "error", "date":"2030-01-01T12:00:00.0000000-05:00", "@simple_error": { "message": "Simple Exception", "type": "System.Exception", "stack_trace": " at Client.Tests.ExceptionlessClientTests.CanSubmitSimpleException() in ExceptionlessClientTests.cs:line 77" } }'
您已經(jīng)創(chuàng)建了帳戶,現(xiàn)在呢?讓我們開始您的項(xiàng)目設(shè)置,然后我們將深入研究一些最佳實(shí)踐和方法,以增強(qiáng)您對(duì)Exceptionless的使用。
客戶端集成
ExceptionlessClient配置編號(hào)
以下示例顯示了可以在應(yīng)用程序中配置Exceptionless的各種方式(配置文件,屬性或代碼)。
配置與代碼
using Exceptionless; var client = new ExceptionlessClient(c => { c.ApiKey = "YOUR_API_KEY"; c.SetVersion(version); }); // You can also set the api key directly on the default instance. ExceptionlessClient.Default.Configuration.ApiKey = "YOUR_API_KEY"
配置與屬性
您還可以使用以下屬性配置Exceptionless:
using Exceptionless.Configuration; [assembly: Exceptionless("YOUR_API_KEY")]
僅當(dāng)在條目或調(diào)用程序集中定義了Exceptionless程序集屬性時(shí),才會(huì)選擇該屬性。如果將上述屬性放置在其他位置,則需要在啟動(dòng)過程中調(diào)用以下方法。
using Exceptionless; ExceptionlessClient.Default.Configuration.ReadFromAttributes(typeof(MyClass).Assembly)
配置與環(huán)境變量
您還可以添加環(huán)境變量或應(yīng)用程序設(shè)置,并使用鍵名Exceptionless:ApiKey和yourYOUR_API_KEY作為值。
使用的Web.config
可以使用web.config或app.config中的config部分配置無例外,具體取決于您擁有的項(xiàng)目類型。安裝正確的NuGet軟件包應(yīng)自動(dòng)添加必要的配置元素。它看起來應(yīng)該像這樣:
<?xml version="1.0" encoding="utf-8"?> <configuration> <configSections> <section name="exceptionless" type="Exceptionless.ExceptionlessSection, Exceptionless" /> </configSections> <!-- attribute names are cases sensitive --> <exceptionless apiKey="API_KEY_HERE" /> ... <system.webServer> <modules> <remove name="ExceptionlessModule" /> <add name="ExceptionlessModule" type="Exceptionless.Mvc.ExceptionlessModule, Exceptionless.Mvc" /> </modules> ... </system.webServer> </configuration>
版本號(hào)
通過指定應(yīng)用程序版本,您可以啟用其他功能。默認(rèn)情況下,將嘗試從程序集屬性中解析應(yīng)用程序版本。但是,最好使用以下代碼指定應(yīng)用程序版本。
using Exceptionless; ExceptionlessClient.Default.Configuration.SetVersion("1.2.3");
離線存儲(chǔ)
事件也可以持久保存到磁盤以用于脫機(jī)情況,或確保在應(yīng)用程序重新啟動(dòng)之間不會(huì)丟失任何事件。選擇文件夾路徑時(shí),請(qǐng)確保應(yīng)用程序在其下運(yùn)行的身份具有對(duì)該文件夾的完全權(quán)限。
請(qǐng)注意,這會(huì)增加一些開銷,因?yàn)槭录谔峤粫r(shí)需要序列化到磁盤,因此不建議用于高吞吐量日志記錄方案。
配置文件號(hào)
<!-- Use Folder Storage --> <exceptionless apiKey="YOUR_API_KEY" storagePath="PATH OR FOLDER NAME" />
代碼
// Use folder storage ExceptionlessClient.Default.Configuration.UseFolderStorage("PATH OR FOLDER NAME"); // Use isolated storage ExceptionlessClient.Default.Configuration.UseIsolatedStorage();
禁用無例外
您可以使用該Enabled設(shè)置禁用Exceptionless在測(cè)試過程中報(bào)告事件。
配置文件號(hào)
<exceptionless apiKey="YOUR_API_KEY" enabled="false" />
屬性編號(hào)
using Exceptionless.Configuration; [assembly: Exceptionless("YOUR_API_KEY", Enabled=false)]
自托管選項(xiàng)
還可以將Exceptionless客戶端配置為將數(shù)據(jù)發(fā)送到您的自托管實(shí)例。通過將設(shè)置serverUrl設(shè)置為指向您的Exceptionless實(shí)例來配置它。
配置文件號(hào)
<exceptionless apiKey="YOUR_API_KEY" serverUrl="http://localhost" />
屬性編號(hào)
using Exceptionless.Configuration; [assembly: Exceptionless("YOUR_API_KEY", ServerUrl = http://localhost)]
https://github.com/exceptionless/Exceptionless
以上就是C# 中使用 Exceptionless的方法的詳細(xì)內(nèi)容,更多關(guān)于C# 中使用 Exceptionless的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- asp.net(c#)網(wǎng)頁(yè)跳轉(zhuǎn)七種方法小結(jié)
- C#幾種截取字符串的方法小結(jié)
- C# DataGridView添加新行的2個(gè)方法
- C#中List〈string〉和string[]數(shù)組之間的相互轉(zhuǎn)換
- C# 一個(gè)WCF簡(jiǎn)單實(shí)例
- C#中使用split分割字符串的幾種方法小結(jié)
- c#處理3種json數(shù)據(jù)的實(shí)例
- C# Stream 和 byte[] 之間的轉(zhuǎn)換
- 關(guān)于C#泛型列表List<T>的基本用法總結(jié)
- C#中string.format用法詳解
相關(guān)文章
C#實(shí)現(xiàn)密碼驗(yàn)證與輸錯(cuò)密碼賬戶鎖定
這篇文章介紹了C#實(shí)現(xiàn)密碼驗(yàn)證與輸錯(cuò)密碼賬戶鎖定的方法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-04-04Unity實(shí)現(xiàn)顏色漸變滑動(dòng)條
這篇文章主要為大家詳細(xì)介紹了Unity實(shí)現(xiàn)顏色漸變滑動(dòng)條,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-07-07C# ping網(wǎng)絡(luò)IP 實(shí)現(xiàn)網(wǎng)絡(luò)狀態(tài)檢測(cè)的方法
下面小編就為大家?guī)硪黄狢# ping網(wǎng)絡(luò)IP 實(shí)現(xiàn)網(wǎng)絡(luò)狀態(tài)檢測(cè)的方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-08-08C#正則表達(dá)式分解和轉(zhuǎn)換IP地址實(shí)例(C#正則表達(dá)式大全 c#正則表達(dá)式語(yǔ)法)
這是我發(fā)了不少時(shí)間整理的C#的正則表達(dá)式,新手朋友注意一定要手冊(cè)一下哦,這樣可以節(jié)省很多寫代碼的時(shí)間。下面進(jìn)行了簡(jiǎn)單總結(jié)2013-12-12C#版的 Escape() 和 Unescape() 函數(shù)分享
從網(wǎng)上看到兩個(gè)方法, C# 版的 Escape() 和 Unescape(),收藏下。2011-05-05WinForm項(xiàng)目開發(fā)中Excel用法實(shí)例解析
這篇文章主要介紹了WinForm項(xiàng)目開發(fā)中Excel用法,非常實(shí)用,需要的朋友可以參考下2014-08-08