Grafana

Полезные ссылки

Homepage

Полезные команды

grafana-cli

# --- сброс пароля администратора
grafana-cli --homepath "/usr/share/grafana/" admin reset-admin-password new-pass

Explorer

# --- форматируем вывод: оставляем только значение одного поля log
{hostname="etl", container_name="etl44"} | json | line_format "{{ .log }}"

API

Получение токена

Примечание

Начиная с версии 9.1 предпочтительным способом авторизации являются сервисные аккаунты (вместо API ключей)

Service account

Создаем сервисный аккаунт в веб-интерфейсе grafana: Home -> Administration -> Service accounts -> Create service account

Проверяем работу

curl -H "Authorization: Bearer glsa_secret" -X GET 'http://grafana.example.com/api/access-control/user/permissions' | jq
# {
#   "alert.instances.external:read": [
#     "datasources:*",
#     "datasources:*"
#   ],
#   "alert.instances.external:write": [
#     "datasources:*"
#   ],
# ...

Резервное копирование и восстановление

grafana-backup-tool

Создание резервной копии

# --- создаем виртуальное окружение
python -m venv venv
source venv/bin/activate

# --- устаналиваем утилиту
pip install grafana-backup

# --- задаем переменные окружения (есть другие варианты, см. ссылку)
export GRAFANA_URL=http://grafana.example.com
export GRAFANA_TOKEN=glsa_secret

# --- запускаем резервирование
grafana-backup save

В результате будет созадана директория _OUTPUT_, в которой будет расположен tar.gz архив и история версий всех панелей.

Восстановление:

source venv/bin/activate
export GRAFANA_URL=http://grafana.example.com
export GRAFANA_TOKEN=glsa_secret
grafana-backup restore _OUTPUT_/202307181939.tar.gz