Как изменить уровень регистрации в бобе kubernetes? - PullRequest
0 голосов
/ 20 апреля 2020

когда я даю

kubectl logs <pod-name>

, он дает журналы модуля, уровень которого установлен на info как я могу изменить этот уровень журнала (как до развертывания, так и после развертывания)?

Ответы [ 2 ]

1 голос
/ 20 апреля 2020

Да,

Как я знаю, ты не можешь. Ваше контейнерное приложение записывает логи в stdout и / или stderr. Затем они перехватываются Kubernetes.

Приложение несет ответственность за создание журналов с информацией info, error и т. Д. c ... и форматирование их, чтобы они могли использоваться внешними инструментами журналов, такими как StackDriver (это пример, потому что я на GKE от Google).

Так, может быть, когда вы запускаете приложение в контейнере, вы можете настроить уровень журналов для вывода журналов, отличных от информации?

0 голосов
/ 20 апреля 2020

Я надеюсь, что вы указали LOG_LEVEL ( я имею в виду LOG_LEVEL как переменную окружения, которая впоследствии будет использоваться приложением ) в манифесте приложения (xyz.yaml). Поэтому, когда модуль развернут, он использует LOG_LEVEL, указанный в манифесте, и настраивает приложение для создания журналов указанного уровня.

После запуска модуля вы не можете изменить уровень журнала, если сначала не удалите его и не удалите его. повторно разверните модуль, используя обновленный манифест.

ВРЕМЕННОЕ РЕШЕНИЕ

Вместо передачи LOG_LEVEL через переменную среды вы можете использовать какой-либо внешний инструмент, например zookeeper, для управления конфигурацией ваше приложение. Для этого подхода вам необходимо запрограммировать ваше приложение таким образом, чтобы при обнаружении изменений на узле zookeeper оно само перезапускалось. Я надеюсь, что это имеет смысл, если вам нужна помощь для этого подхода, дайте мне знать.

...