使用 CloudWatch Insights 在 Glue Query 中查询 Python 日志
Query Python logs in Glue Query with CloudWatch Insights
我是 CloudWatch Insights 的新手,我一直在尝试了解如何让它与 Python 日志记录一起使用。目前我在 PySpark/Python
中有一个 AWS Glue
ETL 查询设置。我在脚本中为 Python 使用默认的 logging
包。
我已阅读文档,但找不到有关如何格式化日志以使其可通过 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 查询示例,以便我可以在此基础上进行构建。
任何人的帮助将不胜感激!
它与设置一个简单的记录器相同
下面的简单示例
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))
我是 CloudWatch Insights 的新手,我一直在尝试了解如何让它与 Python 日志记录一起使用。目前我在 PySpark/Python
中有一个 AWS Glue
ETL 查询设置。我在脚本中为 Python 使用默认的 logging
包。
我已阅读文档,但找不到有关如何格式化日志以使其可通过 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 查询示例,以便我可以在此基础上进行构建。
任何人的帮助将不胜感激!
它与设置一个简单的记录器相同
下面的简单示例
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))