Рубрики
Uncategorized

Получить статистику сервера, используя 🚀statslite:

Простые в использовании и установите инструмент статистики серверов. Теги с рубином, мониторингом, рельсами, дежопами.

Вот ссылка на инструмент

Простой способ получить информацию о сервере как JSON. Легко расширить с config.rb файл. Встраивается в рельсы

Автономное использование

Требования Ruby, Min версии 2

sudo apt-get install -y ruby build-essential ruby-dev

Использование автономное, вам может потребоваться запустить несколько команд, как Sudo Отказ

gem install stats_lite --no-ri --no-rdoc
stats-lite
curl http://localhost:9111

Добавить в запуск, Crontab

crontab -e
# then add
@reboot /usr/local/bin/stats-lite

Создать config.rb. тогда статистика- лишать

# example config.rb
# basic usage

StatsLite.configure do |s|
  s.password "1234" # password protection
  s.port 9111 # listening port
end
# now it's protected by passowrd
curl http://localhost:9111?password=1234 

Рельсы Использование

GEM «Stats_lite»

# routes.rb
mount StatsLite::App => "/server-stats" 

Расширенная конфигурация

StatsLite.configure do |s, h|
  s.password ENV["STATS_LITE_PASS"] # defaults to nil, unprotected
  s.port ENV["STATS_LITE_PORT"] # defaults to 9111

  s.data -> (data) do # add more data
    data[:ruby_current_time] = Time.now # simple value
    data[:linux_time] = h.command("date") # bash command, supports {cache: true, expires_in: 60} 

    data[:slow_command] = h.fetch :slow_command, -> {
      sleep 1
      "slow command"
    }, expires_in: 5 # cached ruby value
  end

  s.app do |sinatra| # extend the app, add multiple routes, which are protected by the password
    sinatra.get("/another_route") do
      content_type :json

      { cpus: h.command("nproc", { cache: true }) }.to_json
    end
  end
end

Оригинал: «https://dev.to/sebyx07/get-server-statistics-using-statslite-21ff»