[英]Can't log string using NLOG
我无法使用 NLOG 从 HTTP 请求中记录字符串。 这是代码:
HttpResponseMessage res = client.PostAsync(path, content).Result;
if (!res.IsSuccessStatusCode)
{
if (File.Exists(tempFilePath))
File.Delete(tempFilePath);
String responseStr = res.Content.ReadAsStringAsync().Result;
//TODO(nassim) : Remplacé ce try catch par juste un retour d'erreur dans les log
//ErrorReponse error = JsonConvert.DeserializeObject<ErrorReponse>(responseStr);
Logger.Debug("Taille du log : " + responseStr.Length);
if(responseStr.Length > 200)
{
Logger.Debug(" 1");
Logger.Error("Erreur d'envoi de Document a Recital : " + responseStr.Substring(0, 200));
}
else
{
Logger.Debug(" 2");
Logger.Error("Erreur d'envoi de Document a Recital : " + responseStr.Substring(0, 10));
}
if (responseStr.Contains("Invalid credentials.") || responseStr.Contains("Token is expired."))
{
refreshToken(vault, storedValues);
storeDocInReciTAL(env);
}
throw new Exception("Erreur d'envoi du document vers reciTAL.");
这是堆栈跟踪:
如您所见,与 responseStr 连接的行没有显示在任何地方。 一开始以为是字符串太长了,结果只有37个字符。
我究竟做错了什么?
使用结构化日志记录可以解决问题。 我不明白为什么它不适用于简单的串联。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.