Softlayer go api,按日期过滤最近的事件

时间:2018-04-09 16:39:26

标签: ibm-cloud-infrastructure

我尝试通过API按数据过滤最近的softlayer事件,例如设置以下过滤器以获取过去48小时内修改的事件

f := filter.Path("modifyDate").DateAfter(time.Now().Add(-48 * time.Hour).Format("01/02/2006 15:04:05")).Build()

我通过

来称呼它
resp, err := AccountService.Filter(f).GetRecentEvents()

我已经尝试过时间格式的日期和时间,只有日期格式为mm / dd / yyyy 启用调试后,我可以看到这会生成以下过滤器

2018/04/09 17:29:45 {"modifyDate":{"operation":"greaterThanDate","options":[{"name":"date","value":["04/07/2018 17:29:45"]}]}}
2018/04/09 17:36:22 [DEBUG] Request URL:  GET https://api.softlayer.com/rest/v3/SoftLayer_Account/getRecentEvents.json?objectFilter=%7B%22modifyDate%22%3A%7B%22operation%22%3A%22greaterThanDate%22%2C%22options%22%3A%5B%7B%22name%22%3A%22date%22%2C%22value%22%3A%5B%2204%2F07%2F2018+17%3A36%3A22%22%5D%7D%5D%7D%7D
2018/04/09 17:36:22 [DEBUG] Parameters:
2018/04/09 17:36:23 [DEBUG] Status Code:  200

不幸的是,这总是会返回相同的结果。我应该如何构建我想要做的查询?

1 个答案:

答案 0 :(得分:1)

您可以尝试以下示例:

f:= Entity

resp,err:= service.Filter(f).GetRecentEvents()

有关详细信息,请查看以下内容:

https://github.com/softlayer/softlayer-go