kubectl logs <pod-id>
получает последние журналы из моего развертывания - Я работаю над ошибкой и хочу узнать журналы во время выполнения - Как я могу получить непрерывный поток журналов?
редактировать: исправленный вопрос в конце.
kubernetes
google-kubernetes-engine
kubectl
энергетический ядерный реактор
источник
источник
kubectl logs --help
поможет вам:Пример:
# Begin streaming the logs of the ruby container in pod web-1 kubectl logs -f -c ruby web-1
Флаги:
-f, --follow[=false]: Specify if the logs should be streamed.
Вы также можете добавить
--since=10m
или начать с того относительного времени назад.источник
Мне нужно было получить доступ к журналам долго работающего модуля, и я
-f
начал потоковую передачу журналов за несколько дней назад, что заняло бы часы, чтобы добраться до того места, где мне нужно было просмотреть (только последние пару минут или около того).Есть
--since=10m
флаг, но он, похоже, не сработал.Что творило чудеса
--tail=100
, где100
отображать количество последних строк.источник
подождите, пока кубы раскрутятся, а затем двигайтесь дальше ...
k8s_pod=some_pod kubectl get pods -w $k8s_pod | while read LOGLINE do [[ "${LOGLINE}" == *"Running"* ]] && pkill -P $$ kubectl done
хвостовые бревна
for line in $(kubectl get pods | grep $k8s_pod | awk '{print $1}'); do kubectl logs -f $line | tee logfile done
ищите индикатор успеха
tail logfile | grep successful! RESULT=$? exit $RESULT
источник
Если вы хотите получить поток журналов из приложения с несколькими модулями , вы можете использовать kubetail , например:
kubectl get pods NAME READY STATUS RESTARTS AGE app2-v31-9pbpn 1/1 Running 0 1d app2-v31-q74wg 1/1 Running 0 1d kubetail app2
С этой командой, kubetail является хвостохранилище бревна из - под app2-v31-9pbpn и app2-V31-q74wg
источник
Попробуй это,
хвостовые бревна из контейнеров
kubectl --tail <"количество строк"> журналы <"pod_name">
Пример :
kubectl --tail 100 журналов app_pod
источник
Если у вас только один контейнер над модулем, имя контейнера не требуется, иначе используйте имя контейнера с параметром -c. -f ie follow по умолчанию ложно. Если вы не установите для него значение true, вы получите снимок журналов вашего контейнера.
источник
Вы можете следить за журналами с помощью -f
kubectl logs -f <pod_name>
Если журналы остановлены, скорее всего, модуль дает сбой, можете ли вы проверить, действительно ли модуль работает или нет? Проверить возраст, возможно, или:
kubectl describe deploy/ds <deploy_or_ds_name>?
Или вы также можете проверить журналы на наличие контейнера внутри модуля, если есть несколько контейнеров.
kubectl -f <pod_name> -c <container_name>
источник