我是CloudWatch Insights的新手,我一直在尝试了解如何使其与Python日志一起使用。目前,我在AWS Glue
中有一个PySpark/Python
ETL查询设置。我正在脚本中使用默认的logging
Python包。
我已经阅读了文档,但是找不到有关如何格式化日志以使其可通过CloudWatch Insights查询的详细信息。理想情况下,我想在日志消息中设置不同的字段,以便通过Insights查询和获取值。
下面是脚本中的一条记录消息的示例:
import timeit
start = timeit.default_timer()
...run some code
stop = timeit.default_timer()
runtime = stop - start
logging.info('Runtime: {}'.format(runtime))
我想查询@Runtime
之类的自定义字段,以显示该列中所有运行时的不同运行情况。与此相关的是,我还希望看到一个简单的Insight查询示例,以便以此为基础。
任何人的帮助将不胜感激!
答案 0 :(得分:1)
与设置简单的记录器相同
下面的简单示例
MSG_FORMAT = '%(asctime)s %(levelname)s %(name)s: %(message)s'
logging.basicConfig(format=MSG_FORMAT)
logger = logging.getLogger('Something')
logger.setLevel(logging.INFO)
然后输入代码
start = timeit.default_timer()
...run some code
stop = timeit.default_timer()
runtime = stop - start
logger.info('Runtime: {}'.format(runtime))