Это система предупреждения, которая отправляет сообщения в корпоративный WeChat на основе ошибок из журнала Elasticsearch. Ошибки берутся из производственной системы. Ниже описано, как установить и развернуть систему.
Установка необходимых модулей для сборки:
Перейдите в папку webpage:
Установите модули:
Примечание: если скорость установки низкая, можно заменить источник Taobao.
Затем соберите страницу:
Собранные статические файлы находятся в папке webpage/public/. Скопируйте их вручную в pladmin/pltplconf/templates/pltplconf/, затем замените теги шаблона в index.html и переместите статические файлы в pladmin/pltplconf/static.
Можно использовать Makefile, чтобы не выполнять сборку и копирование каждый раз вручную:
Pl-log-notic разработан на Python 3.8.
Если установка идёт медленно, можно попробовать использовать другое зеркало, например:
В особых случаях может потребоваться установить пакеты в определённое место. В этом случае используйте опцию --target:
Также можно использовать относительный или абсолютный путь:
При запуске команды python необходимо указать переменную среды PYTHONPATH:
PYTHONPATH=package python
Тогда модуль будет содержать каталог package текущего каталога:
$ PYTHONPATH=package python Python 3.8.5 (default, Jul 28 2020, 12:59:40) [GCC 9.3.0] on linux Type "help", "copyright", "credits" or "license" for more information.
import sys sys.path ['', '/home/az13js/pl-log-notic/package', '/usr/lib/python38.zip', '/usr/lib/python3.8', '/usr/lib/python3.8/lib-dynload', '/home/az13js/.local/lib/python3.8/site-packages', '/usr/local/lib/python3.8/dist-packages', '/usr/lib/python3/dist-packages']
Перейдите в папку pladmin и выполните команду:
По умолчанию используется локальная база данных sqlite3, файл базы данных находится в pladmin/db.sqlite3.
Для использования MySQL необходимо внести некоторые изменения.
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', # 数据库引擎 'NAME': 'test_001', # 数据库名 'USER': 'root', # 账号 'PASSWORD': 'PASSWORD', # 密码 'HOST': '127.0.0.1', # HOST 'POST': 3306, # 端口 'CONN_MAX_AGE': 60 # 数据库连接维持时间 } }
import pymysql pymysql.install_as_MySQLdb()
Перейдите в папку pladmin и запустите команду:
Эта команда не переводит сервер в фоновый режим, рекомендуется настроить supervisor для мониторинга. Если используется sqlite3, могут возникнуть проблемы с блокировкой базы данных, но это не критично.
Перейдите в папку pladmin и запустите команду:
Порт 9210 — это порт веб-службы, который можно изменить.
Откройте браузер и перейдите по адресу http://127.0.0.1:9210/.
Сервер использует фреймворк Django. Если вы планируете использовать встроенный бэкэнд, вы можете создать суперпользователя.
Перейдите в папку pladmin и запустите команду:
Заполните информацию о пользователе и пароле.
Система поддерживает экспорт всех данных из ES в соответствии с пользовательскими правилами. Принцип работы заключается в том, что Worker узел запрашивает у Web службы задачи на экспорт, выполняет их и экспортирует данные. Можно запустить несколько Worker узлов, используя разные имена для каждого. Для запуска Worker необходимо настроить переменные среды следующим образом:
Пример:
cd pladmin WORKER_NAME=local-worker-01 HOST=pl-log-notic.az13js.cn IP=127.0.0.1 PORT=9210 CACHETIME=1m python3 manage.py export_worker
Эту команду следует защитить от неожиданного завершения программы. В режиме одного компьютера экспортированные файлы сохраняются в папку pladmin/pltplconf/static, откуда их можно загрузить. При развёртывании кластера на разных серверах загрузка файлов может быть невозможна. В таком случае рекомендуется обратиться к скрипту pladmin/export_floder_process_script.py для написания команды загрузки файлов в специализированный файловый сервис, а затем изменить параметр EXPORT_FLODER_PROCESS_COMMAND в конфигурационном файле. Worker процесс после завершения экспорта данных передаст папку с данными в качестве первого аргумента команде, указанной в параметре EXPORT_FLODER_PROCESS_COMMAND конфигурационного файла. Затем команда выведет содержимое папки в виде ссылки, которую веб-сервис сохранит и отобразит пользователю.
Независимо от того, является ли это веб-службой, планировщиком или узлом экспорта, все компоненты могут быть развёрнуты на отдельных серверах. Поскольку конфигурация по умолчанию предназначена для одиночного развёртывания, необходимо выполнить следующие настройки:
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Комментарии ( 0 )