Политика MessageLogging или новый файл JavaScript - PullRequest
0 голосов
/ 11 ноября 2019

Я пытаюсь внедрить Apigee Logging для регистрации нескольких атрибутов, таких как IP-адрес клиента, общая задержка обработки и другие пользовательские заголовки, которые будут получены из запроса и ответа. Они подразделяются на атрибуты BaseLog, Атрибуты SysLog и Атрибуты AppLog, каждый из которых написан поверх BaseLog. Я хотел бы знать, каков наилучший способ их регистрации. Было бы лучше использовать политику MessageLogging или использовать собственный код JS для извлечения и заполнения переменных?

Наконец, я должен отправить журналыSplunk сервер. Как можно поступить так?

Любой вклад будет полезен! Спасибо.

Ответы [ 2 ]

0 голосов
/ 27 ноября 2019

Как правило, рекомендуется минимизировать использование JavaScript или любых других политик расширений, так как он порождает поток в обработчике сообщений каждый раз, когда эти политики расширений выполняются, и, таким образом, существует риск тупиковой ситуации, поскольку у пула потоков всегда есть ограничение.

Apigee специально предоставляет политику регистрации сообщений для асинхронного входа, поэтому вам следует попробовать настроить все в потоке Post client и попробовать использовать политику сообщений Assign вместо политики Extension для любых назначений переменных.

Надеюсь, что это поможет!

0 голосов
/ 20 ноября 2019

Я использую Политика JavaScript , чтобы установить переменные, которые я хочу записать в файл журнала (например, requestDateTime, ip и т. Д.), Используя context.setVariable("variableName", value);

И затем обратиться к этим переменнымв MessageLogging Policy like

<Message>{requestDateTime}|{client.ip}|{request.content}|{elapsTime}</Message> 

На самом деле, у Apigee есть много полезных переменных, которые вы можете использовать напрямую, если не хотите добавлять больше JS Policy в свой поток, но для моегоСитуация Я хочу написать большое значение в моем журнале, некоторые из них должны быть объединены с другими переменными, поэтому их легко установить, прежде чем ссылаться в MessageLogging.

Однако я просто разделяю метод, который использую.

Надеюсь, это полезно для вас.

...