Micronaut - отправлять уникальный x-request-id на запрос - PullRequest
0 голосов
/ 20 февраля 2020

Я начал делать шлюз API в микроавтобусе. У меня уже есть некоторые конечные точки, но пришло время прилично регистрировать каждый запрос. Я пришел из узла, и в моей голове должно быть довольно просто поместить x-request-id в заголовок каждого запроса.

Мой код, чтобы уточнить, что я имею в виду:


@Client(value="${services.users.url}")
public interface UserClient extends BaseClient{

    @Get("/users/{userId}")
    @Header(name = "x-request-id", value = "${random.uuid}")
    Single<Object> getUserById(@PathVariable int userId);

}

Однако, похоже Java принимает только постоянные значения времени компиляции для аннотаций:

ERROR i.m.r.intercept.RecoveryInterceptor - Type [gateway.users.clients.UserClient$Intercepted] executed with error: Could not resolve placeholder ${random.uuid}
io.micronaut.context.exceptions.ConfigurationException: Could not resolve placeholder ${random.uuid}

Я подтвердил, что невозможно ставить непостоянное значение в любой аннотации, что приводит меня к моему последнему вопросу:

Какой лучший способ в micronaut / Java уникально идентифицировать запрос?

Заранее большое спасибо. Я искал ответ везде, где я знаю, но я не могу найти ничего полезного.

...