Java 如何在哨兵报告中添加标签?
好的,我想在我们的哨兵报告中添加一些用户标识 使用Spring,我们有了加载用户的Java 如何在哨兵报告中添加标签?,java,sentry,Java,Sentry,好的,我想在我们的哨兵报告中添加一些用户标识 使用Spring,我们有了加载用户的OidcUserService public class MyOidcUserService extends OidcUserService { @Override public OidcUser loadUser(OidcUserRequest userRequest) throws OAuth2AuthenticationException { var sentry = Sen
OidcUserService
public class MyOidcUserService extends OidcUserService {
@Override
public OidcUser loadUser(OidcUserRequest userRequest) throws OAuth2AuthenticationException {
var sentry = Sentry.getStoredClient();
var sContext = Sentry.getContext();
sentry.addTag("user", "<unauthenticated>");
sContext.addTag("user", "<context: unauthenticated>");
var authenticatedUser = super.loadUser(userRequest);
checkRoles(authenticatedUser);
var user = getOrCreateUser(authenticatedUser); //MyOidcUser
sentry.addTag("user", user.getPerson().getThreeLetterCode());
sContext.addTag("user", "context: " + user.getPerson().getThreeLetterCode());
if (true) throw new RuntimeException("This really should show the tag ...");
return user;
}
...
}
公共类MyOidcUserService扩展了OidcUserService{
@凌驾
公共OidcUser loadUser(OidcUserRequest userRequest)引发OAuth2AuthenticationException{
var sentry=sentry.getStoredClient();
var sContext=Sentry.getContext();
addTag(“用户”,“用户”);
addTag(“用户”,“用户”);
var authenticatedUser=super.loadUser(userRequest);
检查角色(authenticatedUser);
var user=getOrCreateUser(authenticatedUser);//MyOidcUser
addTag(“user”,user.getPerson().getThreletterCode());
sContext.addTag(“user”,“context:+user.getPerson().getThreletterCode());
如果(true)抛出新的RuntimeException(“这确实应该显示标记…”);
返回用户;
}
...
}
然而,发生的情况是异常显示在sentry
上,好吧,但是user
标记丢失了
为什么??我该如何添加这个该死的东西呢?请看
应该是这样的:
// Set the user in the current context.
Sentry.getContext().setUser(
new UserBuilder().setEmail("a@a.com").build()
);
请看
应该是这样的:
// Set the user in the current context.
Sentry.getContext().setUser(
new UserBuilder().setEmail("a@a.com").build()
);
这就是我最终要做的。但我仍然不明白为什么标签不起作用。这就是我最终做的。但我还是不明白为什么标签不起作用。