AWS Greengrass не генерирует логи пользователей - PullRequest
0 голосов
/ 08 ноября 2018

В довольно новой новой установке с использованием AWS руководство по началу работы я не получаю пользовательские журналы (в / greengrass / ggc / var / log / user ), что делает невозможно развитие лямбды Greengrass.

Вот некоторые симптомы:

  • / greengrass / ggc / var / log / user не создается (и когда я создаю его вручную и подкаталоги под ним, user / us-east-1 /, greengrassd уничтожает все эти подкаталоги)
  • Есть сообщение в / greengrass / ggc / var / log / system / localwatch / localwatch.log , failed to list the user log directory, path: /greengrass/ggc/var/log/user
  • Других сообщений об ошибках в runtime.log , crash.log или других системных журналах нет.

У меня есть куча теорий, но я не могу это подтвердить:

  • Я обменивал SD-карты на одном и том же RPi, каждая с разными версиями Raspbian (Jessie, Stretch, разные версии ядра) и разными группами Greengrass. Может ли это быть причиной замены SD-карт (например, AWS или какой-либо другой сервис, который они используют, например overlayFS, снимают отпечаток аппаратного обеспечения)? На другом RPi, который я не сделал этим обменом, у меня, похоже, нет проблем.

  • Есть ли проблема с настройками IAM для роли группы? Я бы подумал, что IAM применяется только к облачным сервисам, а не к сервисам Greengrass на шлюзе.

Любые идеи, которые кто-либо может иметь по этому поводу, будут очень признательны !!!

Ответы [ 2 ]

0 голосов
/ 09 ноября 2018

В конечном итоге выясняется, что это была ошибка конфигурации, но я получил сообщение об ошибке в localwatch.log (как я уже упоминал в моем первоначальном посте).

Что я сделал, так это настроил несколько лямбд, работающих на RPi, чтобы немедленно сообщать (через console.logs) о происходящем, и я установил две лямбды на «Сделать эту функцию долгоживущей и сохранить ее». работает бесконечно »(в« Групповой лямбда-конфигурации »в интерфейсе Greengrass). В результате каждый раз, когда запускается демон Greengrass, в журнал пользователя попадает что-то.

Для моего второго RPi я настроил лямбды вручную, но забыл сделать их «долгоживущими», и поэтому они начали с событий, поэтому лямбды не запускались по умолчанию. Когда я захожу в каталог журнала пользователя, я ничего там не нахожу, и когда я ткнул в localwatch.log, я получил сообщение "failed to list the user log directory, path: /greengrass/ggc/var/log/user" что, по-видимому, наводит на мысль, что у Гринграсса были трудности с доступом к структуре каталогов журнала пользователя. Это отправило меня в погоню за диким гусем.

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

Еще раз спасибо за ответ, Дж. Бенсон. Приятно видеть, что другие активно используют Greengrass, и, надеюсь, мы начнем создавать сообщество пользователей, которые могут помогать друг другу. Обратите внимание, что я также разместил это на форуме AWS, но отметил его как решенное.

0 голосов
/ 08 ноября 2018

Со мной такое случалось только один раз. Для меня чистая установка GG и ядра в новой системе помогла и удалила все ошибки. Тем не менее, есть одно место в консоли, которое вы должны проверить, чтобы убедиться, что журналы включены:

- В группе Greengrass выберите группу, затем перейдите в «настройки», там вы увидите «Конфигурация локальных журналов». Убедитесь, что они у вас есть, и повторите развертывание для активации.

Что касается отладки лямбда-кода, я рекомендую " python-lambda-local ", чтобы помочь отладить лямбда-код для python. Кроме того, не забывайте, что некоторые из этих расположений файлов должны sudo , чтобы видеть файлы и подпапки.

...