SoftLayer Event_Log 对象过滤器忽略指定的时区
SoftLayer Event_Log object filter ignoring specified timezone
我正在尝试查询 SoftLayer 审计日志 (SoftLayer_Event_Log) 数据。我正在应用基于日期戳的对象过滤器,但该过滤器忽略了时区感知日期戳。
代码片段来自 Python。
对象过滤器:
{u'eventCreateDate': {u'operation' : u'betweenDate',
u'options' :
[
{u'name' : u'startDate',
u'value' : ['2016-02-25T19:21:53.796725+00:00']},
{u'name' : u'endDate',
u'value' : ['2016-02-25T20:13:40.507255+00:00']}
]
}
}
结果:
{'accountId' : 654321,
'eventCreateDate' : '2016-02-25T19:39:10.794659-06:00',
'eventName' : 'Login Successful',
'ipAddress' : '5.6.7.8',
'label' : 'username',
'objectId' : 123456,
'objectName' : 'User',
'traceId' : 'redacted',
'userId' : 123456,
'userType' : 'CUSTOMER',
'username' : 'username'}
{'accountId' : 654321,
'eventCreateDate' : '2016-02-25T19:39:01.567608-06:00',
'eventName' : 'Login Failed',
'ipAddress' : '1.2.3.4',
'label' : 'username',
'objectId' : 123456,
'objectName' : 'User',
'traceId' : 'redacted',
'userId' : '',
'userType' : 'SYSTEM'}
...etc...
结果数据肯定在规定的时间范围内,但不在规定的时区范围内。
对象过滤器忽略时区,它只过滤存储在数据库中的日期。如果没有错,数据库中的日期存储在达拉斯时区,因此您必须更改开始和结束日期,同时考虑到您的用户时区与数据库中存储的时区之间的差异。
我正在尝试查询 SoftLayer 审计日志 (SoftLayer_Event_Log) 数据。我正在应用基于日期戳的对象过滤器,但该过滤器忽略了时区感知日期戳。
代码片段来自 Python。
对象过滤器:
{u'eventCreateDate': {u'operation' : u'betweenDate',
u'options' :
[
{u'name' : u'startDate',
u'value' : ['2016-02-25T19:21:53.796725+00:00']},
{u'name' : u'endDate',
u'value' : ['2016-02-25T20:13:40.507255+00:00']}
]
}
}
结果:
{'accountId' : 654321,
'eventCreateDate' : '2016-02-25T19:39:10.794659-06:00',
'eventName' : 'Login Successful',
'ipAddress' : '5.6.7.8',
'label' : 'username',
'objectId' : 123456,
'objectName' : 'User',
'traceId' : 'redacted',
'userId' : 123456,
'userType' : 'CUSTOMER',
'username' : 'username'}
{'accountId' : 654321,
'eventCreateDate' : '2016-02-25T19:39:01.567608-06:00',
'eventName' : 'Login Failed',
'ipAddress' : '1.2.3.4',
'label' : 'username',
'objectId' : 123456,
'objectName' : 'User',
'traceId' : 'redacted',
'userId' : '',
'userType' : 'SYSTEM'}
...etc...
结果数据肯定在规定的时间范围内,但不在规定的时区范围内。
对象过滤器忽略时区,它只过滤存储在数据库中的日期。如果没有错,数据库中的日期存储在达拉斯时区,因此您必须更改开始和结束日期,同时考虑到您的用户时区与数据库中存储的时区之间的差异。