mirror of
https://github.com/mofeng-git/One-KVM.git
synced 2025-12-12 01:00:29 +08:00
common logging.yaml
This commit is contained in:
parent
e97975fc15
commit
b690dbce44
9
Makefile
9
Makefile
@ -5,12 +5,15 @@ TESTENV_LOOP ?= /dev/loop7
|
||||
TESTENV_CMD ?= /bin/bash -c " \
|
||||
(socat PTY,link=$(TESTENV_HID) PTY,link=/dev/ttyS11 &) \
|
||||
&& rm -rf /etc/nginx/* \
|
||||
&& cp -r /configs/nginx/* /etc/nginx \
|
||||
&& cp -r /usr/share/kvmd/configs/nginx/* /etc/nginx \
|
||||
&& mkdir -p /etc/kvmd \
|
||||
&& cp /usr/share/kvmd/configs/kvmd/logging.yaml /etc/kvmd/logging.yaml \
|
||||
&& cp /testenv/kvmd.yaml /etc/kvmd \
|
||||
&& nginx -c /etc/nginx/nginx.conf \
|
||||
&& ln -s $(TESTENV_VIDEO) /dev/kvmd-streamer \
|
||||
&& (losetup -d /dev/kvmd-msd || true) \
|
||||
&& losetup /dev/kvmd-msd /root/loop.img \
|
||||
&& python -m kvmd.apps.kvmd -c testenv/kvmd.yaml \
|
||||
&& python -m kvmd.apps.kvmd -c /etc/kvmd/kvmd.yaml \
|
||||
"
|
||||
|
||||
|
||||
@ -29,8 +32,8 @@ run:
|
||||
- docker run --rm \
|
||||
--volume `pwd`/kvmd:/kvmd:ro \
|
||||
--volume `pwd`/web:/usr/share/kvmd/web:ro \
|
||||
--volume `pwd`/configs:/usr/share/kvmd/configs:ro \
|
||||
--volume `pwd`/testenv:/testenv:ro \
|
||||
--volume `pwd`/configs:/configs:ro \
|
||||
--device $(TESTENV_LOOP):/dev/kvmd-msd \
|
||||
--device $(TESTENV_VIDEO):$(TESTENV_VIDEO) \
|
||||
--publish 8080:80/tcp \
|
||||
|
||||
@ -73,26 +73,4 @@ kvmd:
|
||||
|
||||
state_poll: 1.0
|
||||
|
||||
logging:
|
||||
version: 1
|
||||
disable_existing_loggers: false
|
||||
|
||||
formatters:
|
||||
console:
|
||||
(): logging.Formatter
|
||||
style: "{"
|
||||
format: "{name:30.30} {levelname:>7} --- {message}"
|
||||
|
||||
handlers:
|
||||
console:
|
||||
level: DEBUG
|
||||
class: logging.StreamHandler
|
||||
stream: ext://sys.stdout
|
||||
formatter: console
|
||||
|
||||
root:
|
||||
level: INFO
|
||||
handlers:
|
||||
- console
|
||||
|
||||
# vim: syntax=yaml filetype=yaml
|
||||
logging: !include logging.yaml
|
||||
@ -74,26 +74,4 @@ kvmd:
|
||||
|
||||
state_poll: 1.0
|
||||
|
||||
logging:
|
||||
version: 1
|
||||
disable_existing_loggers: false
|
||||
|
||||
formatters:
|
||||
console:
|
||||
(): logging.Formatter
|
||||
style: "{"
|
||||
format: "{name:30.30} {levelname:>7} --- {message}"
|
||||
|
||||
handlers:
|
||||
console:
|
||||
level: DEBUG
|
||||
class: logging.StreamHandler
|
||||
stream: ext://sys.stdout
|
||||
formatter: console
|
||||
|
||||
root:
|
||||
level: INFO
|
||||
handlers:
|
||||
- console
|
||||
|
||||
# vim: syntax=yaml filetype=yaml
|
||||
logging: !include logging.yaml
|
||||
20
configs/kvmd/logging.yaml
Normal file
20
configs/kvmd/logging.yaml
Normal file
@ -0,0 +1,20 @@
|
||||
version: 1
|
||||
disable_existing_loggers: false
|
||||
|
||||
formatters:
|
||||
console:
|
||||
(): logging.Formatter
|
||||
style: "{"
|
||||
format: "{name:30.30} {levelname:>7} --- {message}"
|
||||
|
||||
handlers:
|
||||
console:
|
||||
level: DEBUG
|
||||
class: logging.StreamHandler
|
||||
stream: ext://sys.stdout
|
||||
formatter: console
|
||||
|
||||
root:
|
||||
level: INFO
|
||||
handlers:
|
||||
- console
|
||||
@ -1,10 +1,15 @@
|
||||
import os
|
||||
import argparse
|
||||
import logging
|
||||
import logging.config
|
||||
|
||||
from typing import Dict
|
||||
from typing import IO
|
||||
from typing import Any
|
||||
|
||||
import yaml
|
||||
import yaml.loader
|
||||
import yaml.nodes
|
||||
|
||||
|
||||
# =====
|
||||
@ -13,10 +18,32 @@ def init() -> Dict:
|
||||
parser.add_argument("-c", "--config", required=True, metavar="<path>")
|
||||
options = parser.parse_args()
|
||||
|
||||
with open(options.config) as config_file:
|
||||
config = yaml.load(config_file)
|
||||
config: Dict = _load_yaml_file(options.config)
|
||||
|
||||
logging.captureWarnings(True)
|
||||
logging.config.dictConfig(config["logging"])
|
||||
|
||||
return config["kvmd"]
|
||||
return config
|
||||
|
||||
|
||||
# =====
|
||||
def _load_yaml_file(path: str) -> Any:
|
||||
with open(path) as yaml_file:
|
||||
try:
|
||||
return yaml.load(yaml_file, _YamlLoader)
|
||||
except Exception:
|
||||
# Reraise internal exception as standard ValueError and show the incorrect file
|
||||
raise ValueError("Incorrect YAML syntax in file '{}'".format(path))
|
||||
|
||||
|
||||
class _YamlLoader(yaml.loader.Loader): # pylint: disable=too-many-ancestors
|
||||
def __init__(self, yaml_file: IO) -> None:
|
||||
yaml.loader.Loader.__init__(self, yaml_file)
|
||||
self.__root = os.path.dirname(yaml_file.name)
|
||||
|
||||
def include(self, node: yaml.nodes.Node) -> str:
|
||||
path = os.path.join(self.__root, self.construct_scalar(node)) # pylint: disable=no-member
|
||||
return _load_yaml_file(path)
|
||||
|
||||
|
||||
_YamlLoader.add_constructor("!include", _YamlLoader.include) # pylint: disable=no-member
|
||||
|
||||
@ -10,7 +10,7 @@ from ... import gpio
|
||||
|
||||
# =====
|
||||
def main() -> None:
|
||||
config = init()
|
||||
config = init()["kvmd"]
|
||||
logger = get_logger(0)
|
||||
|
||||
logger.info("Cleaning up ...")
|
||||
|
||||
@ -17,7 +17,7 @@ from .server import Server
|
||||
|
||||
# =====
|
||||
def main() -> None:
|
||||
config = init()
|
||||
config = init()["kvmd"]
|
||||
with gpio.bcm():
|
||||
loop = asyncio.get_event_loop()
|
||||
http_session = aiohttp.ClientSession(loop=loop)
|
||||
|
||||
@ -68,27 +68,4 @@ kvmd:
|
||||
|
||||
state_poll: 1.0
|
||||
|
||||
logging:
|
||||
version: 1
|
||||
disable_existing_loggers: false
|
||||
|
||||
formatters:
|
||||
console:
|
||||
(): logging.Formatter
|
||||
style: "{"
|
||||
datefmt: "%H:%M:%S"
|
||||
format: "[{asctime}] {name:30.30} {levelname:>7} --- {message}"
|
||||
|
||||
handlers:
|
||||
console:
|
||||
level: DEBUG
|
||||
class: logging.StreamHandler
|
||||
stream: ext://sys.stdout
|
||||
formatter: console
|
||||
|
||||
root:
|
||||
level: INFO
|
||||
handlers:
|
||||
- console
|
||||
|
||||
# vim: syntax=yaml filetype=yaml
|
||||
logging: !include logging.yaml
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user