#kubernetes #kubectl #azure-aks #knative #knative-eventing
Вопрос:
Я запускаю кластер AKS (служба Azure Kubernetes), но теперь, когда я пытаюсь получить доступ к журналам, я получаю проблему ниже, что странно, потому что я с ней не сталкивался.
Вопрос:
kubectl logs -n default hello-display-759947d684-782n5
2021/11/02 08:11:04 Failed to read tracing config, using the no-op default: empty json tracing config
Ожидаемое поведение:
Я ожидаю, что журналы будут отображаться.
Дополнительная информация:
kubectl version
Client Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.5", GitCommit:"aea7bbadd2fc0cd689de94a54e5b7b758869d691", GitTreeState:"clean", BuildDate:"2021-09-15T21:10:45Z", GoVersion:"go1.16.8", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"20", GitVersion:"v1.20.9", GitCommit:"ed93e7ea8f833824d05578765c2ad3efbebbfebe", GitTreeState:"clean", BuildDate:"2021-10-21T03:31:08Z", GoVersion:"go1.15.14", Compiler:"gc", Platform:"linux/amd64"}
Заранее спасибо.
Ответ №1:
Я бы не счел это проблемой, но предупреждением. Этот приветственный дисплей, похоже, использует библиотеку Knative, которую вы можете найти здесь:
Если вы хотите настроить наблюдаемость, не возвращаясь к значениям по умолчанию, вы должны добавить эти переменные среды элементов в это отображение приветствия, что обычно делается путем чтения конфигурационной карты. Для справки, вы можете найти конфигурацию по умолчанию, используемую в основных компонентах событий, здесь.
Комментарии:
1. Привет, это weid, потому что этот приветственный дисплей от самого Knative.
2. Я следую за этим описанием.dev/docs/события/начало работы и не говорю о карте конфигурации. 🙁
3. Получаемое вами сообщение является не ошибкой, а предупреждением о том, что применяются некоторые значения по умолчанию. Но этот двоичный файл не использует библиотеку адаптера v2, он ожидает, что эта
K_CONFIG_TRACING
переменная содержит конфигурацию трассировки, как ожидается, в двоичных файлах Knative: github.com/knative/eventing/blob/…4. У тебя есть какие-нибудь идеи, как это исправить ?
5. Я думаю, что здесь нечего исправлять. Если вы посмотрите на источник выше, то увидите, что это единственный журнал, который записывается в happy path. Единственная причина, по которой вы хотели бы добавить конфигурацию трассировки, — это включить трассировку и подключить что-то вроде zipkin или jaeger, в чем я не уверен, если это ваше намерение. Журналы, которые вы получаете, — это те, которые вы должны получить. Проверьте это здесь: github.com/knative/eventing/blob/… Это единственные журналы, написанные приложением, которое вы запускаете.
Ответ №2:
Похоже kubectl
, что это передает вам журналы из контейнера прокси-сервера очереди, установленного Knative, а не из пользовательского контейнера. Попробуйте выполнить эту команду:
kubectl logs -n default hello-display-759947d684-782n5 -c user-container
Кроме того, у AKS может быть централизованная служба регистрации, которую вы можете использовать для просмотра журналов для текущих и прошлых модулей, что должно позволить вам выбрать, какой контейнер вы просматриваете.
Комментарии:
1. Странно, я все еще получаю 2021/11/02 08:11:04 Не удалось прочитать конфигурацию трассировки, используя значение по умолчанию без операции: пустая конфигурация трассировки json, и я понятия не имею, почему.
2. Вы получаете это от
user-container
, или от прокси-сервера очереди?3. из пользовательского контейнера