[英]How to log stack trace error when ConnectionMultiplexer fails to connect?
我有這個代碼
private ILogger logger;
.
.
.
try
{
redisClient = ConnectionMultiplexer.Connect(connectionString);
}
catch (Exception ex)
{
logger.LogError(ex, ex.toString());
redisClient = null;
return;
}
我們打算如果它無法連接,我們想要記錄堆棧跟蹤錯誤。 但看起來這不會真正導致異常。 它只會讓redisClient.IsConnected返回 false
有沒有辦法記錄堆棧跟蹤或幫助連接失敗的消息? 這是我們想到的?
private ILogger logger;
.
.
.
var redisClient = ConnectionMultiplexer.Connect(connectionString);
if(!redisClient.IsConnected)
{
logger.LogError(redisClient.StackTraceError);
}
我想我現在明白你了。
ConnectionMultiplexer
中有一個事件。 該事件稱為ConnectionFailed
你不需要try catch。 你可以這樣做:
redisClient.ConnectionFailed += (sender, args) =>
{
Console.WriteLine("Connection failed: " + args.Exception.Message);
};
另外,您可以使用args
來獲取更多詳細信息
希望有幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.