问题标签 [logging]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - 使用 Linq to SQL 时为 SQL 查询计时的好方法
使用 Linq to SQL 时,有没有一种很好的方法来计时 SQL 查询?我真的很喜欢日志记录功能,但如果你能以某种方式也可以为该查询计时,那就太好了。有任何想法吗?
java - 自动确定调用者的类名的 Java 记录器
此方法将返回一个记录器,该记录器知道它正在记录的类。有什么反对意见吗?
许多年后:https ://github.com/yanchenko/droidparts/blob/master/droidparts/src/org/droidparts/util/L.java
java - 应该将 Log4J 记录器声明为瞬态吗?
我正在使用带有 Log4J 的 Java 1.4。
我的一些代码涉及序列化和反序列化值对象 (POJO)。
我的每个 POJO 都声明了一个记录器
序列化程序抱怨 org.apache.log4j.Logger 不是可序列化的。
我应该使用
反而?
java - 记录多线程应用程序中的活动
我有一个 Java 分层应用程序,它有一个从不同点调用的多线程数据访问层。对该层的一次调用可能会产生多个线程来并行处理对 DB 的请求。
我正在寻找的是一个日志工具,它允许我定义由各种线程组成的“活动”。因此,数据访问层中的相同方法应根据其调用者记录不同的输出。对不同输出进行分组以总结操作总成本的能力也很重要。
虽然应用程序是 Java 语言,但语言不是限制;我需要的是设计指南,以便最终实现它。我们目前正在使用 log4j,但无法从中获得这种行为。
logging - 从多个服务器聚合多个日志文件的最佳方法
我需要一种简单的方法来监视分布在多个 HP-UX 服务器上的多个文本日志文件。它们是来自多个分布式遗留系统的文本和 XML 日志文件的混合体。目前我们只是通过 ssh 连接到服务器并使用tail -f和grep,但是当您有很多日志要跟踪时,这并不能扩展。
由于日志的格式不同,并且只是文件夹中的文件(当它们达到一定大小时自动旋转),我需要远程收集它们并以不同的方式解析每个文件。
我最初的想法是创建一个简单的守护进程,我可以在每台服务器上运行它,使用针对每种文件类型的自定义文件阅读器将其解析为可以通过套接字通过网络导出的通用格式。另一个本地运行的查看器程序将连接到这些套接字,并在一些简单的选项卡式 GUI 中显示已解析的日志或聚合到控制台。
如果我要以这种方式实现它,我应该尝试转换成什么日志格式?
还有其他更简单的方法吗?我应该尝试将日志文件转换为 log4j 格式以与Chainsaw一起使用,还是有更好的日志查看器可以连接到远程套接字?我可以按照另一个日志问题中的建议使用BareTail吗?这不是一个大规模分布式系统,更改所有应用程序的当前日志记录实现以使用 UDP 广播或将消息放在 JMS 队列上不是一种选择。
java - log4j 日志文件名?
我们有几个同时运行的作业,它们必须为 log4j 使用相同的配置信息。他们都使用相同的附加程序将日志转储到一个文件中。有没有办法让每个作业动态命名其日志文件,以便它们保持独立?
谢谢
汤姆
language-agnostic - 在 OOP 上下文中正确记录
自从我第一次开始学习面向对象编程以来,我一直在努力解决一个问题:应该如何在“正确的”OOP 代码中实现记录器?
我的意思是一个对象,它有一个我们希望代码中的每个其他对象都能够访问的方法;这个方法将输出到控制台/文件/任何东西,我们将使用它来记录——因此,这个对象将是记录器对象。
我们不想将 logger 对象建立为全局变量,因为全局变量不好,对吧?但是我们也不希望在每个对象中调用的每个方法的参数中都传递记录器对象。
在大学里,当我向教授提出这个问题时,他实际上无法给我答案。我意识到实际上有可能实现此功能的包(例如 Java)。不过,我最终要寻找的是如何正确地以 OOP 方式自己实现这一点的知识。
java - 为什么无论配置如何,根记录器都会收集所有日志类型?
我遇到的问题是,即使我在根标记中将级别指定为 ERROR,指定的附加程序也会将所有级别(调试、信息、警告)记录到文件中,而不管设置如何。我不是 Log4j 专家,因此不胜感激。
我已经检查了 log4j.properties 的类路径(没有),除了 log4j.xml。
这是 log4j.xml 文件:
如果我用另一个记录器替换根,那么指定的附加程序根本不会记录任何内容。
c# - PostSharp - il weaving - 想法
我正在考虑使用 Postsharp 框架来减轻应用程序方法日志记录的负担。它基本上允许我用日志属性装饰方法,并在编译时将所需的日志代码注入到 il.xml 中。我喜欢这个解决方案,因为它可以将噪音排除在设计时间码环境之外。有什么想法、经验或更好的选择吗?
java - 事件日志解析器的适当设计模式?
处理一个解析事件日志的项目,然后根据这些事件的属性更新模型。我对“完成它”非常懒惰,更关心前期优化、精简代码和正确的设计模式。主要是自学实验。我感兴趣的是更有经验的设计师认为哪些模式是相关的,或者哪种类型的伪代码对象架构是最好的、最容易维护的等等。
单个日志中可以有 500,000 个事件,大约有 60 种类型的事件,所有这些都共享大约 7 个基本属性,然后根据事件类型有 0 到 15 个附加属性。事件类型是日志文件中每一行的第二个属性。
因此,我尝试了一个非常丑陋的命令式解析器,它逐行遍历日志,然后逐行处理事件。然后我尝试了一个使用“nextEvent”模式的词法规范,该模式在循环中被调用并被处理。然后我尝试了一个简单的旧“解析”方法,它永远不会返回,只是将事件触发到注册的侦听器回调。无论事件类型如何,我都尝试了单个回调,以及特定于每种事件类型的回调方法。
我尝试了一个包含所有可能属性的基本“事件”类。我试图避免“新事件”调用(因为可能有大量事件并且事件对象通常是短暂的)并且每个类型都有带有原始属性参数的回调方法。我已经尝试为 60 种事件类型中的每一种创建一个子类,并使用一个具有 7 个公共基本属性的抽象事件父类。
我最近尝试更进一步,并使用命令模式为每种事件类型放置事件处理代码。我不确定我是否喜欢这种方法,它与每种类型的回调方法非常相似,只是代码位于类型子类中的执行函数内,而不是每种类型的回调方法。
问题是很多模型更新逻辑是共享的,其中很多是特定于子类的,我刚刚开始对整个事情感到困惑。我希望有人至少可以指出我考虑的方向!