1
0
mirror of https://github.com/esphome/esphome.git synced 2025-09-13 00:32:20 +01:00

Add Webserver Prometheus support for sensor, binary sensor, fan, light, cover and switch (#1032)

This commit is contained in:
Marvin Gaube
2020-06-10 03:00:12 +02:00
committed by GitHub
parent cd7af19e7c
commit f63fd9696f
8 changed files with 431 additions and 1 deletions

View File

@@ -4,7 +4,7 @@ from esphome.components import web_server_base
from esphome.components.web_server_base import CONF_WEB_SERVER_BASE_ID
from esphome.const import (
CONF_CSS_INCLUDE, CONF_CSS_URL, CONF_ID, CONF_JS_INCLUDE, CONF_JS_URL, CONF_PORT,
CONF_AUTH, CONF_USERNAME, CONF_PASSWORD)
CONF_AUTH, CONF_USERNAME, CONF_PASSWORD, CONF_PROMETHEUS)
from esphome.core import coroutine_with_priority
AUTO_LOAD = ['json', 'web_server_base']
@@ -19,6 +19,7 @@ CONFIG_SCHEMA = cv.Schema({
cv.Optional(CONF_CSS_INCLUDE): cv.file_,
cv.Optional(CONF_JS_URL, default="https://esphome.io/_static/webserver-v1.min.js"): cv.string,
cv.Optional(CONF_JS_INCLUDE): cv.file_,
cv.Optional(CONF_PROMETHEUS, default=False): cv.boolean,
cv.Optional(CONF_AUTH): cv.Schema({
cv.Required(CONF_USERNAME): cv.string_strict,
cv.Required(CONF_PASSWORD): cv.string_strict,
@@ -49,3 +50,5 @@ def to_code(config):
cg.add_define('WEBSERVER_JS_INCLUDE')
with open(config[CONF_JS_INCLUDE], "r") as myfile:
cg.add(var.set_js_include(myfile.read()))
if config[CONF_PROMETHEUS]:
cg.add_define('WEBSERVER_PROMETHEUS')