Source code for vivialconnect.resources.log
"""
.. module:: configuration
:synopsis: Log module.
"""
from vivialconnect.resources.resource import Resource
[docs]class Log(Resource):
"""Returns the list of logs in your account.
Required Query Parameters
======================== ===========
Field Description
======================== ===========
start_time Start date and time. Format used is ISO 8601 as YYYYMMDDThhmmssZ , ISO 8601 format without - and :
end_time End date and time. Format used is ISO 8601 as YYYYMMDDThhmmssZ , ISO 8601 format without - and :
======================== ===========
Optional Query Parameters
======================== ===========
Field Description
======================== ===========
log_type The log type, as a string. log-types are typically of the form ITEM_TYPE.ACTION, where ITEM_TYPE is the type of item that was affected and ACTION is what happened to it. For example, message.queued. |
item_id Unique id of item that was affected.
operator_id Unique id of operator that caused this log.
limit Used for pagination, number of log records to return.
start_key Used for pagination, value of last_key from previous response.
======================== ===========
"""
@classmethod
[docs] def get_aggregated_logs(
cls,
start_time,
end_time,
aggregator_type="minutes",
optional_query_parameters=None,
):
"""Returns the list of aggregated logs in your account.
Required Query Parameters
======================== ===========
Field Description
======================== ===========
start_time Start date and time. Format used is ISO 8601 as YYYYMMDDThhmmssZ , ISO 8601 format without - and :
end_time End date and time. Format used is ISO 8601 as YYYYMMDDThhmmssZ , ISO 8601 format without - and :
aggregator_type Default value: "minutes". Valid values are: minutes, hours, days, months, years
======================== ===========
Optional Query Parameters
======================== ===========
Field Description
======================== ===========
log_type The log type, as a string. log-types are typically of the form ITEM_TYPE.ACTION, where ITEM_TYPE is the type of item that was affected and ACTION is what happened to it. A valid list of log_ytpes: message.queued, message.undelivered, message.failed, message.received, webhook.error, number.purchased, number.released, user.login, user.login_success
operator_id Unique id of operator that caused this log.
limit Used for pagination, number of log records to return.
start_key Used for pagination, value of last_key from previous response.
======================== ===========
"""
query_string = {
"start_time": start_time,
"end_time": end_time,
"aggregator_type": aggregator_type,
}
if optional_query_parameters is not None:
for key, value in optional_query_parameters.items():
query_string[key] = value
response = Log.get(custom_path="/aggregate", **query_string)
return response