【发布时间】:2021-05-15 22:45:50
【问题描述】:
我尝试使用 Google 云日志记录 API 检索日志并尝试使用 Python 迭代器。以下是我的代码:
import os
import pprint
from google.cloud import logging
from google.cloud.logging import ASCENDING
from google.cloud.logging import DESCENDING
pp = pprint.PrettyPrinter(indent=1)
FILTER = 'resource.type="k8s_container"'
client = logging.Client()
iterator = client.list_entries(filter_=FILTER, order_by=DESCENDING)
print(type(iterator))
for page in iterator.pages:
print(' Page number: %d' % (iterator.page_number,))
print(' Items in page: %d' % (page.num_items,))
print('Items remaining: %d' % (page.remaining,))
print('Next page token: %s' % (iterator.next_page_token,))
print('----------------------------')
for entry in page:
print(entry.timestamp)
但执行上述程序后,我得到以下错误:
<class 'generator'>
Traceback (most recent call last):
File "/Users/suniljacob/Sunil/11-gitDownloads/19-gitlab/google_logging/cloud_loggingg.py", line 19, in <module>
for page in iterator.pages:
AttributeError: 'generator' object has no attribute 'pages'
请求退伍军人提供一些帮助,因为我被困在这里
P.S.:我在 Python 3.9 上运行并使用 virtualenv
【问题讨论】:
-
从here 看来,您需要调用
list_resources而不是list_entries以获得支持pages属性的迭代器。 -
Client对象没有list_resources属性
标签: python-3.x google-cloud-platform google-cloud-logging