kubectl logs
Огляд
Вивести логи для контейнера у Podʼі або вказаного ресурсу. Якщо в pod є лише один контейнер, назва контейнера не є обовʼязковою.
kubectl logs [-f] [-p] (POD | TYPE/NAME) [-c CONTAINER]
Приклади
# Вивести знімок логів з Podʼа nginx з одним контейнером
kubectl logs nginx
# Вивести знімки логів з пакета nginx, додаючи до кожного рядка імʼя вихідного пакета та контейнера.
kubectl logs nginx --prefix
# Вивести знімки логів з pod nginx, обмеживши виведення до 500 байт
kubectl logs nginx --limit-bytes=500
# Вивести знімки логів з pod nginx, зачекавши до 20 секунд на їх запуск.
kubectl logs nginx --pod-running-timeout=20s
# Вивести знімок логів з Podʼа nginx з кількома контейнерами
kubectl logs nginx --all-containers=true
# Вивести знімок логів з всіх Podʼів в deployment nginx
kubectl logs deployment/nginx --all-pods=true
# Вивести знімок логів з усіх контейнерів у Podʼах, визначених міткою app=nginx
kubectl logs -l app=nginx --all-containers=true
# Вивести знімок логів з всіх Podʼів з міткою app=nginx, обмживши запити логів 10 Podʼами
kubectl logs -l app=nginx --max-log-requests=10
# Вивести знімок логів з попереднього завершеного контейнера ruby з Podʼа web-1
kubectl logs -p -c ruby web-1
# Почати трансляцію логів з Podʼа nginx, продовжувати навіть за наявності помилок
kubectl logs nginx -f --ignore-errors=true
# Почати трансляцію логів контейнера ruby у Podʼі web-1
kubectl logs -f -c ruby web-1
# Почати трансляцію логів з усіх контейнерів у Podʼах, визначених міткою app=nginx
kubectl logs -f -l app=nginx --all-containers=true
# Показати лише останні 20 рядків виводу в Podʼі nginx
kubectl logs --tail=20 nginx
# Показати всі логи з Podʼа nginx, записані за останню годину
kubectl logs --since=1h nginx
# Показати всі логи з позначками часу від Podʼа nginx, починаючи з 30 серпня 2024 року, о 06:00:00 UTC
kubectl logs nginx --since-time=2024-08-30T06:00:00Z --timestamps=true
# Показати логи з kubelet з простроченим сертифікатом сервера
kubectl logs --insecure-skip-tls-verify-backend nginx
# Вивести знімок логів з першого контейнера завдання з назвою hello
kubectl logs job/hello
# Вивести знімок логів з контейнера nginx-1 у deployment з назвою nginx
kubectl logs deployment/nginx -c nginx-1
Параметри
| --all-containers | |
Отримайте логи всіх контейнерів у pod(ах). | |
| --all-pods | |
Отримати логи з усіх Pod(ів). Встановлює префікс у true. | |
| -c, --container string | |
Вивести логи цього контейнера | |
| -f, --follow | |
Вкажіть, чи потрібно транслювати логи. | |
| -h, --help | |
Довідка logs | |
| --ignore-errors | |
Якщо ви переглядаєте / стежите за логами pod, дозвольте будь-яким помилкам, що трапляються, бути не фатальними | |
| --insecure-skip-tls-verify-backend | |
Пропустити перевірку ідентичності kubelet, з якого запитуються логи. Теоретично, зловмисник може повернути недійсний вміст логу. Можливо, ви захочете використати цей параметр, якщо термін дії сертифікатів, що обслуговують ваш kubelet, закінчився. | |
| --limit-bytes int | |
Максимальна кількість байт логів для виводу. Стандартно без обмежень. | |
| --max-log-requests int Типово: 5 | |
Вкажіть максимальну кількість паралельних логів, які слід відстежувати при використанні селектора. Стандартно встановлено значення 5. | |
| --pod-running-timeout duration Типово: 20s | |
Тривалість часу (наприклад, 5s, 2m або 3h, більше нуля) для очікування, поки не запрацює хоча б один Pod | |
| --prefix | |
До початку кожного рядка логу додайте джерело логу (імʼя pod та імʼя контейнера) | |
| -p, --previous | |
Якщо true, вивести логи для попереднього екземпляра контейнера в pod, якщо він існує. | |
| -l, --selector string | |
Селектор (запит на мітки) для фільтрації, що підтримує '=', '==', '!=', 'in', 'notin' (наприклад, -l key1=value1,key2=value2,key3 in (value3)). Обʼєкти, щоб мати збіг, повинні задовольняти усім зазначеним обмеженням міток. | |
| --since duration | |
Виводити лише ті логи, що є новішими за відносну тривалість, наприклад, 5s, 2m або 3h. Стандартно для всіх логів. Можна використовувати лише один з параметрів since-time / since. | |
| --since-time string | |
Виводити логи лише після певної дати (RFC3339). Стандартно для всіх логів. Можна використовувати лише один з параметрів since-time / since. | |
| --tail int Типово: -1 | |
Рядки нещодавнього файлу логу для показу. Стандартно дорівнює -1 без селектора, показуючи всі рядки логу, інакше 10, якщо селектор вказано. | |
| --timestamps | |
Додайте мітки часу до кожного рядка у виводі логу | |
Успадковані батьківські параметри
| --as string | |
Імʼя користувача, яке використовується для виконання операції. Користувач може бути звичайним користувачем або службовим обліковим записом в просторі імен. | |
| --as-group strings | |
Група, яка використовується для операції; цей прапорець можна повторити для вказівки декількох груп. | |
| --as-uid string | |
UID, який використовується для операції. | |
| --as-user-extra strings | |
Додаткові параметри користувача, які слід використовувати для операції. Цей прапорець можна повторювати, щоб вказати кілька значень для одного і того ж ключа. | |
| --cache-dir string Типово: "$HOME/.kube/cache" | |
Типове розташування теки кешу | |
| --certificate-authority string | |
Шлях до файлу сертифіката для центра сертифікації | |
| --client-certificate string | |
Шлях до файлу клієнтського сертифіката для TLS | |
| --client-key string | |
Шлях до файлу ключа клієнта для TLS | |
| --cluster string | |
Назва файлу kubeconfig кластера, який слід використовувати | |
| --context string | |
Назва контексту kubeconfig, який слід використовувати | |
| --disable-compression | |
Якщо true, відмовляється від стиснення відповіді для всіх запитів до сервера | |
| --insecure-skip-tls-verify | |
Якщо true, сертифікат сервера не буде перевірятися на дійсність. Це зробить ваші HTTPS-зʼєднання небезпечними | |
| --kubeconfig string | |
Шлях до файлу kubeconfig, який слід використовувати для CLI-запитів. | |
| --kuberc string | |
Шлях до файлу kuberc, який буде використовуватися для налаштувань. Цю функцію можна вимкнути, експортувавши функцію KUBECTL_KUBERC=false або вимкнувши функцію KUBERC=off. | |
| --match-server-version | |
Вимагає, щоб версія сервера відповідала версії клієнта | |
| -n, --namespace string | |
Якщо присутній, простір імен для цього CLI-запиту | |
| --password string | |
Пароль для базової автентифікації на API-сервері | |
| --profile string Типово: "none" | |
Імʼя профілю для захоплення. Одне із (none|cpu|heap|goroutine|threadcreate|block|mutex|trace) | |
| --profile-output string Типово: "profile.pprof" | |
Імʼя файлу, в який записується профіль | |
| --request-timeout string Типово: "0" | |
Час очікування перед відмовою у виконанні окремого запиту до сервера. Ненульові значення повинні містити відповідну одиницю часу (наприклад, 1s, 2m, 3h). Значення нуль означає відсутність тайм-ауту запитів. | |
| -s, --server string | |
Адреса та порт сервера API Kubernetes | |
| --storage-driver-buffer-duration duration Типово: 1m0s | |
Записи в драйвері зберігання будуть буферизовані на цей час і збережені в бекендах без памʼяті як одна транзакція | |
| --storage-driver-db string Типово: "cadvisor" | |
Назва бази даних | |
| --storage-driver-host string Типово: "localhost:8086" | |
Хост:порт бази даних | |
| --storage-driver-password string Типово: "root" | |
Пароль бази даних | |
| --storage-driver-secure | |
використовувати захищене зʼєднання з базою даних | |
| --storage-driver-table string Типово: "stats" | |
Назва таблиці | |
| --storage-driver-user string Типово: "root" | |
Імʼя користувача бази даних | |
| --tls-server-name string | |
Імʼя сервера, яке використовується для перевірки дійсності сертифіката сервера. Якщо воно не надане, використовується імʼя хоста, яке використовується для звʼязку з сервером | |
| --token string | |
Токен на предʼявника для автентифікації на API-сервері | |
| --user string | |
Імʼя користувача kubeconfig, яке слід використовувати | |
| --username string | |
Імʼя користувача для базової автентифікації на API-сервері | |
| --version version[=true] | |
--version, --version=raw виводить інформацію про версію та завершує роботу; --version=vX.Y.Z... задає відповідну версію | |
| --warnings-as-errors | |
Трактувати попередження, отримані від сервера, як помилки і виходити з ненульовим кодом виходу | |
Дивіться також
- kubectl — kubectl керує менеджером кластерів Kubernetes