Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/kotlin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在哨兵报告中添加标签?_Java_Sentry - Fatal编程技术网

Java 如何在哨兵报告中添加标签?

Java 如何在哨兵报告中添加标签?,java,sentry,Java,Sentry,好的,我想在我们的哨兵报告中添加一些用户标识 使用Spring,我们有了加载用户的OidcUserService public class MyOidcUserService extends OidcUserService { @Override public OidcUser loadUser(OidcUserRequest userRequest) throws OAuth2AuthenticationException { var sentry = Sen

好的,我想在我们的哨兵报告中添加一些用户标识

使用Spring,我们有了加载用户的
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()
);

这就是我最终要做的。但我仍然不明白为什么标签不起作用。这就是我最终做的。但我还是不明白为什么标签不起作用。