为什么Sentry不在Java中工作,而类似的代码在python中工作?
我正在尝试将Sentry与我们的java项目集成。我已经测试了一个python脚本,它运行良好。看起来是这样的:为什么Sentry不在Java中工作,而类似的代码在python中工作?,java,sentry,Java,Sentry,我正在尝试将Sentry与我们的java项目集成。我已经测试了一个python脚本,它运行良好。看起来是这样的: from raven import Client client = Client(myDsn) try: 1 / 0 except ZeroDivisionError: client.captureException() @Test public void Sentry() throws IOException { Sentry.init(dsn
from raven import Client
client = Client(myDsn)
try:
1 / 0
except ZeroDivisionError:
client.captureException()
@Test
public void Sentry() throws IOException {
Sentry.init(dsn);
Sentry.getContext().addExtra("stacktrace.app.packages", "com.testpackage.test");
Sentry.getContext().setUser(new UserBuilder().setUsername("RoboTricker").build());
Sentry.getContext().addTag("thread", Thread.currentThread().getName());
try {
unsafeMethod();
} catch (Exception e) {
Sentry.capture(e);
}
}
但是当我用Java做同样的事情时,它就不起作用了。Java代码如下所示:
from raven import Client
client = Client(myDsn)
try:
1 / 0
except ZeroDivisionError:
client.captureException()
@Test
public void Sentry() throws IOException {
Sentry.init(dsn);
Sentry.getContext().addExtra("stacktrace.app.packages", "com.testpackage.test");
Sentry.getContext().setUser(new UserBuilder().setUsername("RoboTricker").build());
Sentry.getContext().addTag("thread", Thread.currentThread().getName());
try {
unsafeMethod();
} catch (Exception e) {
Sentry.capture(e);
}
}
没有例外,但当我转到仪表板时,没有报告错误。这意味着它不会发送错误
两种代码的dsn相同。
你知道我可能遗漏了什么吗?什么使你认为java版本不起作用?请描述症状。@yunnosch没有例外,但当我转到仪表板时,没有报告错误。这意味着它不会发送错误。请向问题中添加有用的信息,而不是将其隐藏在注释中。是否可以尝试为
io.sentry
包启用调试日志记录?或者尝试将?async=false
添加到DSN。另外,这不是stacktrace.app.packages
或其他配置的位置,请参阅:它与async=false一起工作。JVM似乎在异步过程在测试环境中完成之前就已经退出了。谢谢。