Source code for aliyun.log.logitem
#!/usr/bin/env python
#encoding: utf-8
# Copyright (C) Alibaba Cloud Computing
# All rights reserved.
import time
import copy
[docs]class LogItem:
""" LogItem used to present a log, it contains log time and multiple
key/value pairs to present the log contents.
:type timestamp: int
:param timestamp: time of the log item, the default time is the now time.
:type contents: tuple(key-value) list
:param contents: the data of the log item, including many (key,value) pairs.
"""
def __init__(self, timestamp=None, contents=None):
self.timestamp = int(timestamp) if timestamp else int(time.time())
self.contents = copy.deepcopy(contents) if contents else []
[docs] def push_back(self, key, value):
""" Append a key/value pair as a log content to the log
:type key: string
:param key: log content key
:type value: string
:param value: log content value
"""
self.contents.append( (key, value) )
[docs] def get_contents(self):
""" Get log contents
:return: tuple(key-value) list, log contents.
"""
return self.contents
[docs] def set_contents(self, contents):
""" Set log contents
:type contents: tuple(key-value) list
:param contents: log contents (key-value pair list)
"""
self.contents = copy.deepcopy(contents)
[docs] def get_time(self):
""" Get log time
:return: int, log time
"""
return self.timestamp
[docs] def set_time(self, timestamp):
""" Set log time
:type timestamp: int
:param timestamp: log time
"""
self.timestamp = int(timestamp)
[docs] def log_print(self):
print 'time', self.timestamp
print 'contents', self.contents