logging 相关问题

计算机数据记录是在计算机程序或计算机系统中记录事件的过程,通常具有一定的范围,以便提供可用于理解系统活动和诊断问题的审计跟踪。除此标记外,请务必包含适当的软件或硬件标记。

Mysysgit 显示“(END)”,我该如何继续?

在Windows下使用mysysgit时,我不知道如何在Git Bash中运行git log后重新获得控制台窗口的控制权。这看起来很简单,但我找不到组合键或命令,...

回答 5 投票 0

如何像格式化数组一样使用独白记录多行条目?

我正在尝试在 symfony 中使用 monolog 记录一个数组。 $logger = $this->get('logger'); $logger->info(=print_R($user,true)); 我得到的输出未格式化为 print_r 预期的格式。我...

回答 3 投票 0

找不到兼容版本的logback

在我的项目中,我使用 slf4j 进行日志记录。 如果我包含对 logback-classic = "1.2.13" 或更早版本的依赖项,我会收到一条错误消息,指出没有找到 SLF4J 提供程序,并且它是默认的...

回答 1 投票 0

Lombok @Log 和 @Slf4j 没有错误方法

我想使用 Lombok @Log 或 @Slf4j 但当我创建时: @日志 公开课测试{ 公共测试(){ log.error("这里出了点问题"); } } 在日志中,我没有错误方法。我...

回答 3 投票 0

ESP_LOGx 消息中日志级别后的数字表示什么?

这里是在同一核心上运行两个具有不同优先级的任务的示例程序,其中任务函数记录任务名称、coreId 和演示计数器。 #包括 #

回答 2 投票 0

“未配置 XML 加密器”的警告 ID 是什么?警告

我试图抑制警告: 未配置 XML 加密器。密钥 {xxx} 可以以未加密的形式持久保存到存储中。我很难找到它的警告 ID。 警告...

回答 2 投票 0

捕获 PyQt 中的任何异常

我在 PyQt 中创建了一个 GUI 应用程序,我想与很多人分享。有时我会遇到意想不到的异常,我认为这是理所当然的 - 每次异常之后我都会改进我的代码,它会变得更好......

回答 1 投票 0

我可以向现有的 aiohttp ClientSession 添加自定义 TraceConfig 吗?

我有一个使用现有aiohttp.ClientSession 的代码。 我想为此会话添加自定义跟踪。 尝试做类似的事情(不起作用): 从 aiohttp 导入 ClientSession、TraceConfig ...

回答 1 投票 0

如何读取 IHttpLoggingInterceptor.OnResponseAsync 中的响应正文?

用于自定义内置http记录器的日志记录。 当我尝试通过 StreamReader 读取 HttpLoggingInterceptorContext.HttpContext.Response.Body 时,它仅返回空字符串。 当我尝试时...

回答 1 投票 0

Python 中 JSON 日志的旋转文件处理程序

我正在使用 Python 保存 JSON 日志。下面是代码: log_file = 'app_log.json' log_json = 字典() log_json["数据"] = {} log_json['数据']['键1'] = "值1" 记录...

回答 3 投票 0

Azure Functions - 日志记录在本地无法正常工作

我有一个用.Net 8编写的简单的点网隔离的Azure函数,它有1个Http触发函数。我有另一个自定义数据库记录器,它被添加到此函数中以启用数据库日志记录....

回答 1 投票 0

如何仅针对特定源将 syslog-ng 中的 log_message_size() 增加到 8K 以上并覆盖默认值

根据文档,Syslog-ng 默认情况下允许每条消息的长度为 8192 字节。当大小超过 8K 时,Syslog 将消息分成两部分。 当我全局应用 log_msg_size() 参数时,

回答 2 投票 0

在 Visual Studio 中记录 DefaultAzureCredential

我正在尝试在 Visual Studio 中为 DefaultAzureCredential 进行日志记录。我设置了日志记录,但是当我获得 DefaultAzureCredential 令牌时,Visual Studio 中没有输出任何日志记录...

回答 2 投票 0

如何完全关闭sqlalchemy注销

sqlalchemy 保持登录控制台,即使我有以下代码 导入日志记录 记录器=logging.getLogger() 记录器.disabled = True 如何完全关闭sqlalchemy的日志记录?

回答 4 投票 0

在 logback.xml 中屏蔽所有请求和响应

我正在使用 logback.xml 来屏蔽敏感数据以进行日志记录,效果很好 我正在使用 logback.xml 来屏蔽敏感数据以进行日志记录,效果很好 <appender name="DATA_MASK" class="ch.qos.logback.core.ConsoleAppender"> <encoder class="ch.qos.logback.core.encoder.LayoutWrappingEncoder"> <layout class="com.masking.MaskingPatternLayout"> <maskPattern>\"creditCardNumber\"\s*:\s*\"(.*?)\"</maskPattern> <!-- questionCode JSON pattern --> <Pattern>${logback.detailedroot}</Pattern> </layout> </encoder> </appender> 但问题是,当我在 logback.xml 中打开请求-响应配置时,这个自定义 MaskingPatternLayout 无法捕获请求-响应日志 <logger name="Request" level="DEBUG" /> <logger name="Response" level="DEBUG" /> 众所周知,上面的两个配置帮助我们将所有请求和响应捕获为日志。然而,掩蔽模式对它们不起作用。 无论如何处理这些请求响应日志来屏蔽。 我理解你的问题的方式是外部配置的记录器不会利用你的掩码。确保正在使用的记录器利用您的掩码的最佳方法是显式配置它们。 您可以使用 Baeldung 教程 配置您自己的面向方面 (AOP) 请求/响应日志记录,并让它使用您已指定的附加程序或您配置的新附加程序。 我正在运行的如下 @Aspect @Component @Order(4) public class RestLoggerAspect { Logger logger = LoggerFactory.getLogger(RestLoggerAspect.class); String before = "Incoming :: "; String after = "Completed :: "; @Before("execution(@(@org.springframework.web.bind.annotation.RequestMapping *) * *(..))") public void log(JoinPoint jp){ Signature signature = jp.getSignature(); // who is called "class method" if(logger.isDebugEnabled()){ logger.debug(before + ((Signature) signature).toShortString() + " : " + joinArgs(jp)); } else { logger.info(before + ((Signature) signature).toShortString()); } } @AfterReturning( pointcut = "execution(@(@org.springframework.web.bind.annotation.RequestMapping *) * *(..))" , returning= "retVal") public void methodLog(JoinPoint jp, Object retVal){ String methodCall = jp.getSignature().toShortString() ; if(logger.isDebugEnabled()){ String logString = after + methodCall + " [ args = " +joinArgs(jp) + " ]"; if (retVal != null) { logString += " return = " + prettify(retVal); } logger.debug(logString); } else { logger.info(after + methodCall); } } private String joinArgs(JoinPoint jp){ return Arrays.stream(jp.getArgs()) .map(t -> t != null ? prettify(t) : "null") .collect(Collectors.joining(", ")); } private String prettify(Object object){ ObjectMapper mapper = new ObjectMapper(); String jsonStr = null; try { jsonStr = String.valueOf(object.getClass()); jsonStr += "=" + mapper.writerWithDefaultPrettyPrinter().writeValueAsString(object); } catch (JsonProcessingException e) { jsonStr = object.toString(); } return jsonStr; } } 此实现的漂亮打印会将请求/响应转储为多行,这可能不是您正在寻找的内容,但您可以自己删除该部分。这里重要的部分是 @Before 方法允许您访问请求并记录它,在我的例子中,只有当我的 AspectLogger 启用了调试时才可以。 @AfterReturning 位允许您访问响应。我为这些定义的模式在使用 RequestMapping 注释时捕获,例如 @GetMapping、@PostMapping 或 @DeleteMapping。 此处的 joinArgs 函数将连接提供给该方法的所有参数,无论数量如何。

回答 1 投票 0

用于记录到 logcat 的 C API

如果我有一个用 C 编写并使用 Android NDK 编译的 ELF 二进制文件,是否有一个用于记录消息的 API,以便它们显示在 logcat 中?

回答 1 投票 0

如何从Azure机器人获取聊天机器人消息日志

目前我有一个 Azure 机器人(echo bot(基于 python Azure 机器人 farmwork)),它在 Teams 频道和 Web 测试中完美运行。 尝试从日志中查询没有结果,应用程序洞察是

回答 1 投票 0

SonarQube 的记录器配置安全警告

在微服务中实现日志记录功能后,我通过 SonarQube 代码检查发送了代码。 SonarQube 不断警告我有关记录器的安全问题。我尝试了几件事...

回答 1 投票 0

在 Blazor UI 中显示未捕获异常的详细信息

我们有一位客户正在使用自定义浏览器,这不允许他们打开控制台来查看记录的错误消息。不幸的是,我们无法访问他们的系统,所以我们需要......

回答 1 投票 0

在 Blazor UI 中显示任何异常的详细信息

我们有一位客户正在使用自定义浏览器,这不允许他们打开控制台来查看记录的错误消息。不幸的是,我们无法访问他们的系统,所以我们需要......

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.