Log.io – небольшое приложение, построенное на Node.js и Socket.io для мониторинга журналов сервера Linux в реальном времени через веб-интерфейс.
На RHEL / CentOS 7
Установите репозитории Epel, используя следующую команду:
yum install http://fedora.mirrors.telekom.ro/pub/epel/7/x86_64/e/epel-release-7-2.noarch.rpm
На RHEL/CentOS 6
32 bit:
yum install http://fedora.mirrors.telekom.ro/pub/epel/6/i386/epel-release-6-8.noarch.rpm
64 bit:
yum install http://fedora.mirrors.telekom.ro/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
После добавления репозиториев Epel вы можете выполнить обновление системы, используя следующую команду:
yum update
Теперь установите Node.js и NPM
Node.js – бесплатная кросс-платформенная среда выполнения JavaScript, которая выполняет JavaScript-код на стороне сервера.
Исторически JavaScript использовался прежде всего для клиентских сценариев, в которых скрипты, написанные на JavaScript, встроены в HTML-страницу веб-страницы и запускаются клиентской стороной с помощью механизма JavaScript в веб-браузере пользователя.
Node.js позволяет разработчикам использовать JavaScript для серверных скриптовых сценариев на стороне сервера для создания динамического содержимого веб-страницы до того, как страница будет отправлена в веб-браузер пользователя.
Следовательно, Node.js представляет собой парадигму «JavaScript везде», объединяющую разработку веб-приложений вокруг одного языка программирования, а не разные языки для скриптов на стороне сервера и на стороне клиента.
Теперь установите nodejs, используя следующую команду:
curl --silent --location https://rpm.nodesource.com/setup_5.x | bash - yum install -y nodejs
Установка и настройка приложения Log.io
Приложение Log.io должно быть установлено через NPM, указав действительного пользователя локальной системы (пример – root).
Я рекомендую установить это приложение через пользователя root. теперь установите приложение, используя следующую команду.
npm install -g log.io --user "root"
после завершения установки приложение создаст папку, которая скрыта, имя папки «Log.io» в centos 7, путь к папке показан ниже:
cd /root/.log.io ls
после этого вы увидите три файла
harvester.conf, log_server.conf, web_server.conf
Теперь пришло время настроить Log.io для мониторинга локальных файлов журнала в режиме реального времени.
– Файл harvester.conf предназначен для просмотра изменений в указанных локальных файлах журнала, объявленных в его конфигурации, и отправки нового журнала на сервер. – harvester.conf
Сначала откройте файл harvester.conf, по умолчанию вы увидите некоторые настройки мониторинга логов веб-сервера Apache:
nano harvester.conf
содержимое файла:
exports.config = { nodeName: "application_server", logStreams: { apache: [ "/var/log/httpd/access_log", "/var/log/httpd/error_log" ], SecureLog: [ "/var/log/secure" ], MySqlLog: [ "/var/log/mysqld.log" ] }, server: { host: '0.0.0.0', port: 28777 } }
Примечание. Если вы не хотите отправлять вывод harverster на удаленный сервер Log.io, тогда откройте файл harvester.conf и замените адрес 0.0.0.0 адресом loopback (127.0.0.1)
log_server.conf – эта конфигурация предназначена для того, чтобы сообщить серверу, на каком IP-адресе он должен прослушиваться.
По умолчанию он прослушивает все IP-интерфейсы, вы можете изменить IP-адрес
мой файл log_server.conf :
nano web_server.conf
exports.config = { host: '0.0.0.0', port: 28778, /* // Enable HTTP Basic Authentication auth: { user: "hackthesec", pass: "1234346" }, */ /* // Enable HTTPS/SSL ssl: { key: '/path/to/privatekey.pem', cert: '/path/to/certificate.pem' }, */ /* // Restrict access to websocket (socket.io) // Uses socket.io 'origins' syntax restrictSocket: '*:*', */ /* // Restrict access to http server (express) restrictHTTP: [ "192.168.29.39", "10.0.*" ] */ }
Разрешите веб-интерфейс и socket.io в брандмауэре для получения журналов с harvester
firewall-cmd --add-port=28778/tcp --permanent firewall-cmd --add-port=28777/tcp --permanent firewall-cmd --reload
Запустить приложение Log.io, используя следующую команду:
log.io-server &
log.io-harvester &
После того, как сервер был запущен, откройте свой браузер и нажмите в строке браузера ваш ip и объявленным ранее портом
Чтобы остановить приложение Log.io, выполните следующую команду.
pkill node
Log.io = https://github.com/NarrativeScience/Log.io
http://logio.org/