云日志服务Logging handler SDK 加载logging.ini配置 此操作是用于加载logging.ini 配置文件,文件处于handler 目录下。加载这份配置才能够使用后续功能。 plaintext logging.config.fileConfig("../handler/logging.ini") 获取logger 实例:root 此操作是用于使用原生的logger 功能,即不将logger日志上传到云日志服务。其中root参数可以省略。 plaintext logger logging.getLogger() 下面这个格式也生效 logger logging.getLogger('root') logger 使用 logger.info("log message,level:info") 获取logger 实例:synclogging 此操作是使用同步单线程的形式将logger日志上传到云日志服务(同时也会输出到控制台),这种方式调用logger生成一条日志,就会发送一次http请求将日志上传。这种方式简单,但当调用频率很高时,会出现阻塞情况,发送效率不高。 plaintext logger logging.getLogger('synclogging') logger.info("sync log message 1,level:info") logger.info("sync log message 2,level:info") logger.info("sync log message 3,level:info") 获取logger 实例:asynclogging 此操作是使用异步批量多线程的形式将logger日志上传到云日志服务(同时也会输出到控制台),这种方式调用logger生成一条日志后,会发送到一个日志累加器内,当日志累加器的日志量超过预设的大小或条数,或者等待指定时间后,日志累加器的日志会被打包成一个任务,然后开启一个线程将这些日志一次批量发送到云日志服务。这种方式效率高,异步非阻塞,非常适合需要频繁上传日志的场景。 plaintext logger logging.getLogger('asynclogging') logger.info("async log message 1,level:info") logger.info("async log message 2,level:info") logger.info("async log message 3,level:info")