Рубрики
Без рубрики

Плагин колба с Python

Предисловие Flask-State – это плагин легкого диаграммы, чтобы показать состояние машины. Флакс Государственный Гит … Помечено с Python, колбой, начинающими.

Преступность

Flask-State – это плагин легкого диаграммы, чтобы показать состояние машины. Государственный Github Flaks

  • Индикаторы мониторинга: CPU, память, использование диска, LoadAvg, время загрузки.
  • Расширяемый: он имеет богатые варианты расширенных функций, включая мониторинг Redis, аутентификацию пользователя, пользовательскую регистрацию, I18N и т. Д.
  • Устойчивые: легкие зависимости, тем врежающиеся проблемы с несколькими прогрессами задач параллелизма (если вы используете Gunicorn ).

Быстрый старт

Установка зависимостей

  • Установить через пипс
pip3 install flask-state
  • Визуализация плагинов зависимости

Использовать jsdelivr CDN для импорта файла колба-состояния.





    
    
    
    

Инициализация

# app.py
from flask import Flask
from flask import render_template
import flask_state

# Create a Flask app
app = Flask(__name__)

# Just bind the correct,readable and writable sqlite database path
app.config['SQLALCHEMY_BINDS'] = {flask_state.DEFAULT_BIND_SQLITE: 'sqlite:///path'}
flask_state.init_app(app)

# After setting up the route,you can display data!
@app.route('/helloworld')
def hello:
    return render_template('index.html')

if __name__ == '__main__':
    app.run(debug=True)

Дисплей колб-состояние

Пример инициализации через Flask-State init метод. Вы можете открыть окно Flask-State, нажав на элемент DOM, связанный с методом.

Ниже приведен полный код:




    
    
    
    


    
    
    


Бегать

 now, Open

 ```http://127.0.0.1:5000/helloworld```

 by using browser, Flask-State is already running!

![](https://cdn.jsdelivr.net/gh/yoobool/flask-state@1.0.3/examples/static/flask_state.png)


## Configuration

### Recording Frequency

Records the state of the machine every 60 seconds by default. Custom time interval is allowed, **but please note that the minimum interval for collecting metrics also is 60 seconds**.



```python
import flask_state

app.config['SQLALCHEMY_BINDS'] = {flask_state.DEFAULT_BIND_SQLITE: 'sqlite:///path'}
# Pass the custom time into the init method
custom_interval = 120
flask_state.init(app, interval=custom_interval)

Redis Monitor.

Если вам нужно отслеживать Redis, просто введите конфигурацию подключения Redis, и Flask-State будет собирать показатели, связанные с Redis и отображать их на странице.

app.config['REDIS_CONF'] = {
    'REDIS_STATUS': True,    
    'REDIS_HOST': '192.168.0.1',    
    'REDIS_PORT': 16000,    
    'REDIS_PASSWORD': 'fish'
}
# Initialize Flask-State after configuration

Локализация

Flask-State в настоящее время поддерживает три языка, в том числе Английский, упрощенный китайский и японский Отказ Язык по умолчанию – английский. Если вам нужны другие языки, пожалуйста, оставьте нам сообщение под Проблемы Отказ





    
    ECharts
    
    
    
    
    
    


    


Trigger всплывающее окно событие Windows

Флэк-состояние поддерживает вас связать несколько

 methods to different DOM elements, those elements can be clicked to open the Flask-State windows.

Of course, you needn't bind the DOM element, Flask-State will create a floating button on the page to open the Flask-State windows. **(Through long press and drag to adjust the position of the floating button)**



```html




    
    Flask-State
    
    
    


    
    
    
    


Вопросы-Ответы

Резервное копирование данных

Записи, которые варьируются от 1, 3, 7 или 30 дней, запрос в нынешней версии колбу. Тем временем 30 дней назад данные будут автоматически удалять.

Если вам нужно просмотреть больше данных, пожалуйста, сделайте резервное копирование данных вовремя.

Многопроцессора

При запуске нескольких экземпляров колбы на одном сервере (например, с помощью Gunicorn). Чтобы избежать задачи параллелизма состояния записи в колбе, мы представили внешнюю настройку блокировки.

Только процесс, который получает ресурс блокировки, имеет разрешение на чтение и запись базы данных. В то же время процесс, который приобрел ресурс блокировки, распечатает его PID.

Контроль доступа

Для пользователей, которые беспокоятся о безопасности, мы рекомендуем вам представить Flask-login Отказ

После включения в каждой операции чтения и записи Flask-State будет выполнять аутентификацию пользователя на основе Flask-входа, и только пользователи, которые передают аутентификацию, могут прочитать и записывать данные локальных состояний.

Дорожная карта

  • Сделайте Flask-State Mobile-Frimary.
  • Настройка сбора частоты через выражение Cron.
  • Добавьте больше расширенного мониторинга услуг.

Оригинал: “https://dev.to/aaronli/flask-plugin-with-python-5an6”