问题标签 [smtpappender]

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.

0 投票
2 回答
1617 浏览

java - 设置 Logback SMTPAppender 发送的邮件的重要性

我在 Logback 中使用 SMTPAppender 在自动作业成功完成和遇到错误时发送消息。我希望以高度重视的方式发送通知我们错误的电子邮件。如何使用 Logback/SMPTAppender 来完成?如果不能开箱即用,有没有人可以分享这个问题的自制解决方案?

0 投票
1 回答
5186 浏览

java - Log4j2:SMTPAppender 不发送错误或致命级别的邮件

我发现 log4j2 中的 SMTPAppender 存在一些问题。每当记录具有级别的事件errorfatal创建时没有具有级别的事件,info然后没有发送邮件并且致命事件消失。

这是我的 log4j2 配置文件 (log4j2.xml) 和一个小程序 (LogTest.java) 来重现问题:


我用这个小程序重现了这个问题(LogTest.java):


如果您取消注释两个标记的位置,一切都会按预期工作:发送两封邮件 - 每封邮件都包含致命事件和先前的信息事件。此外,将 4 个事件打印到标准输出:

现在,如果您只激活/取消注释第二个位置 - 第二个邮件 (fatal2) 会按预期发送(再次使用之前的 info2 事件),但即使第一个致命事件打印到标准输出,邮件也会被吃掉。输出如下所示:


就我个人而言,对我而言,我似乎有问题并且配置错误的 log4j2 或者它可能是一个错误。

提前感谢您的帮助。

*约斯特

笔记:

对于测试,我使用了从项目网站下载的log4j2-beta7 。文档可以在这里找到。

0 投票
1 回答
787 浏览

email - 使用外部属性文件的 logback 无法正常工作

我想我遇到了一个 playframework - logback 特定的错误,也许不是,任何帮助都会很棒!

我需要一个电子邮件附加程序,以便在发生错误时向我发送电子邮件。
所以我创建了一个简单的,其中定义了所有属性:

这工作得很好。
然后我想重构所有属性,因为显然我不想将密码和类似的东西提交给源代码控制。
所以我用 ${propname} 替换了所有属性并在开头添加了这个

现在不再发送电子邮件了。
我调试并打印出属性,发现问题与引号有关。
我的收件人/收件人是电子邮件地址,当我将它们放在我的属性文件中时,我需要用引号将它们括起来,否则我会收到如下错误:

我的密码中还有一个“+”符号,如果它在属性文件中没有被引用,我会得到同样的错误。
使用这些引用的值进行调试时,我看到引用包含在其中。
因此,正在尝试将电子邮件发送到“a@b.com”而不是 a@b.com。从字段和密码相同。
所以显然它不起作用。

知道如何防止这种情况吗?

0 投票
2 回答
6971 浏览

java - 必须发出 STARTTLS 命令

我正在尝试通过 log4j 发送错误电子邮件。通过使用以下附加程序:

但我收到以下异常

从其他几个问题中,我了解到我需要在smtpAppender

那么我们如何将它添加到现有的 SMTPAppender 中呢?

0 投票
1 回答
564 浏览

java - Log4J 转换说明符“%l”不打印整个堆栈跟踪

我正在尝试发送电子邮件以防我们的项目发生错误。为此,我们使用 Log4j 的SMTPAppender. 我正在开发模式下运行我的项目,并尝试通过使用以下内容来获取错误的完整堆栈ConversionPattern跟踪SMTPAppender

我抛出错误如下:

%m被文本替换,To get the MDC values !!! 但是%l小写L)正在打印发出带有行号的日志请求的调用者的完全限定类名(就像 %c 所做的那样,不同之处在于 %c 从不打印行号而 %l 确实)。

获取堆栈跟踪的正确方法是什么,为什么%l不获取整个堆栈跟踪?

0 投票
1 回答
1789 浏览

log4net - log4net SmtpAppender 不发送邮件

我对 log4net 有以下 SmtpAppender 配置:

电子邮件从不发送。

我启用了内部调试并检查了跟踪/输出并发现以下内容:

我看不到任何错误,也没有电子邮件。电子邮件地址、凭据和主机都是有效的,因为我们也在 web.config 文件的 System.Net 部分中使用它们并且它们运行良好。

任何人都知道我的配置可能做错了什么?或者也许我可以做一些其他形式的故障排除来解决这个问题?
使用 RollingFile、Trace 和 AdoNetAppender 等其他附加程序也可以正常工作。

0 投票
1 回答
1444 浏览

java - Log4j 解析错误在 SMTPAppender 上添加 triggeringPolicy

在我的 SpringMVC 项目中,我启用了从 INFO 消息开始的电子邮件日志记录(默认行为是从 ERROR 消息开始)。

这是我在log4j.xml中的 appender 配置:

它在运行时工作,但我得到相同的 xml 解析器错误和警告启动项目:

log4j:WARN 元素类型“appender”的内容必须匹配“(errorHandler?,param ,rollingPolicy?,triggeringPolicy?,connectionSource?,layout?,filter*,appender-ref*)”。*

怎么了?
我正在使用 log4j-1.2.16。

0 投票
3 回答
10141 浏览

java - 如何使用 slf4j / log4j2 发送电子邮件通知?

我研究了其他类似的问题,并进行了一些谷歌搜索以找到我的答案,但我的问题仍未得到解答。我仍然不熟悉其中一些是如何工作的,所以请耐心等待。

我们的 maven pom.xml 使用了 slf4j 依赖:

pom.xml 从使用 maven 导入 slf4j

我们的 log4j2.xml 文件如下所示:

包含 smtp appender 的 log4j2.xml 文件

我只将它添加到上面的 log4j2.xml 文件<SMTP name="Mail" ...> </SMTP>中,并在我添加的文件中降低<logger name="com.path.class1" ...> <appender ...> </logger>

但是由于某种原因,当我调用 log.error("error message") 时,我的电子邮件没有发送给我。我知道 smtp 主机可以工作,因为它用于 .NET 服务。smtp 服务器不需要任何凭据即可使用它。我知道我的 log.error 调用位于正确的目录和文件路径中。我试过设置端口,但这没有任何区别。如何让电子邮件通知正常工作?

我什至尝试了mailAppender,但这也没有用:在此处输入图像描述

0 投票
1 回答
6738 浏览

java - 如何使用 log4j2 对不同的类使用不同的日志记录级别?

在 log4j2 文档log4j2 java 配置中,默认配置是这样的:

这将为控制台生成级别 ERROR 或 FATAL 的日志记录。我的默认日志记录以相同的方式工作。我遇到的问题是当我这样做时:

根据文档log4j2 java configuration,这将

消除除 com.foo.Bar 之外的所有内容的所有 TRACE 输出。

另一方面,我的实现就像

甚至不在那里。它仍然只会打印出错误日志。

问题

  • 有没有其他人遇到过这个问题?
  • 任何人都可以复制它吗?
  • 有谁知道如何修理它?我几乎会给某人一美元。不过,我肯定会满足于将他们的答案标记为绿色。

以下是有关我的设置的一些信息:

Maven 依赖项

其他

我正在适当的课程中对此进行测试。我正在运行一个 JUnit 测试文件。我使用了 src/main .xml 文件和 src/test .xml 文件。两者最终得到相同的结果。

最终目标

我的最终目标是让特定的记录器发送 SMTP 请求。我很确定我知道该怎么做,我只是在努力解决这个小问题

0 投票
2 回答
1834 浏览

java - Log4j2 SMTPAppender 不发送电子邮件

我的问题类似于这两个:

但我根本无法发送 SMTP,而且我不想将其<appender-ref ref="SMTPAppender" />放入根记录器中。如果我这样做了,我会收到来自每个记录器的电子邮件。所以 SMTPAppender 能够发送 SMTP,但我只想让notificationLogger成为唯一发送电子邮件的记录器。

这是我的 log4j2.xml 文件:

我该怎么做才能让notificationLogger成为唯一发送 SMTP 的记录器?