【问题标题】:Need to get time data about since when the instance was last stopped in gcp需要获取自上次在 gcp 中停止实例以来的时间数据
【发布时间】:2019-08-30 12:43:51
【问题描述】:

我想在 gcp 中获取有关实例停止时间的数据。即自从实例停止时。我想在脚本中实现它以进一步使用它并将服务器移动到快照。谁能帮助我如何使用gcloud 或调用google apis 的python 脚本从gcp 获取这些数据?

【问题讨论】:

    标签: google-cloud-platform google-compute-engine gcloud google-apis-explorer google-cloud-logging


    【解决方案1】:

    获取所有计算实例的列表及其最后开始和停止的日期和时间。

    gcloud compute instances list --format='table(name,status,lastStartTimestamp,lastStopTimestamp.list())'

    【讨论】:

      【解决方案2】:

      从下面的命令中,您可以获取有关已停止实例的 JSON 数据,相应地更改 timestamp 值:

      gcloud logging read 'resource.type="gce_instance" AND logName:activity_log AND timestamp>="2019-08-27T00:00:00Z" AND jsonPayload.event_subtype:stop' --format json --project $project_id
      

      获取此类审核日志信息的另一种方法是改用logName:cloudaudit.googleapis.com%2Factivity。例如,现在考虑一个时间范围:

      gcloud logging read 'resource.type="gce_instance" AND logName:"cloudaudit.googleapis.com%2Factivity" AND timestamp>="2019-08-01T00:00:00Z" AND timestamp<="2019-08-30T00:00:00Z" AND protoPayload.methodName:stop' --format json --project $project_id
      

      【讨论】:

      • 这个也适合我,但使用jsonPayload.event_subtype="compute.instances.stop"而不是jsonPayload.event_subtype="stop"
      • @bhito 我提到了jsonPayload.event_subtype:stop,它执行“包含”方法而不是等于。正如您所提到的,="compute.instances.stop" 也应该可以工作。
      • 我没有获得 3-4 个月前停止的实例的数据,即使我设置了 2018 年的时间戳。有时间限制吗?
      • @shreytyagi 刚刚更新了我的答案。请检查这是否参加你
      猜你喜欢
      • 1970-01-01
      • 2017-08-31
      • 1970-01-01
      • 1970-01-01
      • 2014-01-18
      • 1970-01-01
      • 2019-07-11
      • 2021-11-24
      • 1970-01-01
      相关资源
      最近更新 更多