Improved logging

This commit is contained in:
2021-11-16 11:41:34 +01:00
parent 16546b4d3c
commit 2176037d08
7 changed files with 38 additions and 13 deletions

View File

@@ -21,6 +21,7 @@ class Application(ApplicationABC):
async def main(self):
try:
self._logger.trace(__name__, f'Try to start {BotService}')
await self._bot.start_async()
except Exception as e:
self._logger.error(__name__, 'Start failed', e)

View File

@@ -0,0 +1,2 @@
{
}

View File

@@ -1,7 +1,12 @@
from datetime import datetime
from typing import Optional
from cpl_core.application import StartupABC
from cpl_core.configuration import ConfigurationABC
from cpl_core.dependency_injection import ServiceCollectionABC, ServiceProviderABC
from cpl_core.dependency_injection import (ServiceCollectionABC,
ServiceProviderABC)
from cpl_core.environment import ApplicationEnvironment
from cpl_core.logging.logger_abc import LoggerABC
from gismo_core.abc.bot_service_abc import BotServiceABC
from gismo_core.service.bot_service import BotService
@@ -15,6 +20,9 @@ class Startup(StartupABC):
def __init__(self):
StartupABC.__init__(self)
self._start_time = datetime.now()
self._config: Optional[ConfigurationABC] = None
async def configure_configuration(self, configuration: ConfigurationABC, environment: ApplicationEnvironment) -> ConfigurationABC:
configuration.add_environment_variables('GISMO_')
@@ -23,6 +31,9 @@ class Startup(StartupABC):
configuration.add_json_file(f'appsettings.{environment.environment_name}.json', optional=True)
configuration.add_json_file(f'appsettings.{environment.host_name}.json', optional=True)
configuration.add_configuration('Startup_StartTime', self._start_time)
self._config = configuration
return configuration
async def configure_services(self, services: ServiceCollectionABC, environment: ApplicationEnvironment) -> ServiceProviderABC:
@@ -33,4 +44,11 @@ class Startup(StartupABC):
services.add_transient(ModuleABC, BootLog)
return services.build_service_provider()
provider: ServiceProviderABC = services.build_service_provider()
startup_init_time = round((datetime.now() - self._config.get_configuration('Startup_StartTime')).total_seconds(), 2)
self._config.add_configuration('Startup_InitTime', startup_init_time)
logger: LoggerABC = provider.get_service(LoggerABC)
logger.debug(__name__, f'Startup Init time: {startup_init_time}s')
return provider