smp_time 模块

TIPCommon.smp_time.change_timezone

TIPCommon.smp_time.change_timezone(dtime: datetime, current_tz: str, new_tz: str)→ datetime

更改 datetime.datetime 对象的时区。

参数

参数
dtime datetime.datetime

要更改时区的 datetime 对象。

current_tz str

当前时区。

new_tz str

要更改为的时区。

返回值

具有新时区的新日期时间对象。

返回类型

datetime.datetime

可能引发的错误

ValueError - 当某个时区无效时。

TIPCommon.smp_time.convert_string_to_timestamp

TIPCommon.smp_time.convert_string_to_timestamp(datetime_string: str)→ int

将日期时间字符串转换为时间戳。

参数

参数
datetime_string str

日期时间字符串。

返回值

时间戳。

返回类型

int

TIPCommon.smp_time.datetime_to_rfc3339

TIPCommon.smp_time.datetime_to_rfc3339(datetime_obj: datetime)→ str

将 datetime 对象转换为 RFC 3999 表示法。

参数

参数
datetime_obj datetime.datetime

要转换的 datetime 对象。

返回值

相应日期时间的 RFC 3339 表示法。

返回类型

str

TIPCommon.smp_time.get_last_success_time

TIPCommon.smp_time.get_last_success_time(siemplify, offset_with_metric, time_format=2, print_value=True, microtime=False)

获取上次成功的时间或日期时间。

参数
siemplify obj

SDK SiemplifyConnectorExecution 类的实例。

offset_with_metric dict

指标和值。
示例: {'hours': 1}

time_format int

输出时间的格式。
示例: DATETIME, UNIX

print_value 可选

bool

指示是否打印值。
默认值为 True

microtime 可选

bool

表示是否返回包含微时间的 Unix 时间。
默认值为 False

返回值

上次成功时间。

返回类型

Time

TIPCommon.smp_time.get_timestamps

TIPCommon.smp_time.get_timestamps(range_string: str, start_time_string: str, end_time_string: str, error_message: str = None, time_in_milliseconds: bool = False)→ tuple[int, int]

获取开始和结束时间戳。

参数

参数
range_string str

时间范围字符串。

start_time_string str

开始时间。

end_time_string str

结束时间。

error_message str

针对引发的异常的错误消息。

默认值为 None

time_in_milliseconds bool

定义是否以毫秒为单位返回开始时间和结束时间。

默认值为 False

返回值

开始时间和结束时间的时间戳。

返回类型

tuple

TIPCommon.smp_time.get_timestamps_from_range

TIPCommon.smp_time.get_timestamps_from_range(range_string: str, include_timezone: bool = False)→ tuple[datetime, datetime]

从范围中获取开始时间和结束时间戳。

参数

参数
range_string str

时间范围字符串。

include_timezone bool, optional

定义是否在时间戳中包含时区信息。

默认值为 False

返回值

开始时间和结束时间的时间戳。

返回类型

tuple

TIPCommon.smp_time.is_approaching_action_timeout

TIPCommon.smp_time.is_approaching_action_timeout(action_execution_deadline_in_unix, timeout_threshold_in_sec=10)

检查操作脚本是否即将达到其专用脚本截止时间。

每个操作脚本都有一个专门的特定截止期限。此函数会检查当前时间是否比截止时间至少早 timeout_threshold_in_sec 秒。默认值为 10 秒,这意味着如果操作距离脚本截止时间(在检查时)不超过 10 秒,该函数会返回 True。如果超过截止时间,该函数会返回 False

参数
action_execution_deadline_in_unix int

操作执行的截止时间。

timeout_threshold_in_sec int

超时阈值(以秒为单位)。

返回值

如果超时即将发生,则为 True;在任何其他情况下,则为 False

TIPCommon.smp_time.is_approaching_timeout

TIPCommon.smp_time.is_approaching_timeout(connector_starting_time, python_process_timeout, timeout_threshold=0.9)

检查是否即将超时。

参数
connector_starting_time int

连接器启动的时间。

python_process_timeout int

连接器允许运行的最长时间。

timeout_threshold float

连接器被视为即将超时的阈值。
默认值为 TIMEOUT_THRESHOLD

返回值

如果连接器即将超时,则为 True;在任何其他情况下,则为 False

TIPCommon.smp_time.save_timestamp

TIPCommon.smp_time.save_timestamp(siemplify, alerts, timestamp_key='timestamp', incrementation_value=0, log_timestamp=True, convert_timestamp_to_micro_time=False, convert_a_string_timestamp_to_unix=False)

保存给定提醒的上次时间戳。

参数
siemplify obj

SDK SiemplifyConnectorExecution 类的实例。

alerts dict

用于查找上次时间戳的提醒列表。

timestamp_key 可选

str

用于从提醒中获取时间戳的键。
默认值为 timestamp

incrementation_value 可选

int

用于递增最后一个时间戳的值(以毫秒为单位)。
默认值为 0。

log_timestamp 可选

bool

指示是否记录时间戳。
默认值为 True

convert_timestamp_to_micro_time 可选

bool

指示是否将时间戳转换为微时间。
默认值为 False

convert_a_string_timestamp_to_unix 可选

bool

指示是否将字符串时间戳转换为 Unix 时间戳。
默认值为 False

返回值

一个布尔值,用于指示时间戳是否已更新。

TIPCommon.smp_time.siemplify_fetch_timestamp

TIPCommon.smp_time.siemplify_fetch_timestamp(siemplify, datetime_format=False, timezone=False)

从 Siemplify 获取时间戳。

参数
siemplify obj

SDK SiemplifyConnectorExecution 类的实例。

datetime_format 可选

bool

指示是否以 datetime 格式返回时间戳。
默认值为 False

timezone 可选

bool

指示是否以世界协调时间 (UTC) 时区返回时间戳。
默认值为 False

返回值

时间戳。

TIPCommon.smp_time.siemplify_save_timestamp

TIPCommon.smp_time.siemplify_save_timestamp(siemplify, datetime_format=False, timezone=False, new_timestamp=1696256382032)

将时间戳保存到 Siemplify。

参数
siemplify obj

SDK SiemplifyConnectorExecution 类的实例。

datetime_format 可选

bool

指示是否以 datetime 格式保存时间戳。
默认值为 False

timezone 可选

bool

指示是否以世界协调时间 (UTC) 时区保存时间戳。
默认值为 False

new_timestamp 可选

int

要保存的新时间戳。

返回值

无。

TIPCommon.smp_time.validate_timestamp

TIPCommon.smp_time.validate_timestamp(last_run_timestamp, offset_in_hours, offset_is_in_days=False)

验证时间范围内的时间戳。

参数
last_run_timestamp datetime

上次运行时间戳。

offset_in_hours int

时间限制(以小时为单位)。

offset_is_in_days 可选

bool

指示偏移量是否以天为单位。
默认值为 False

可能引发的错误

ValueError - 当时间戳无效时。

返回值

经过验证的时间戳。

返回类型

datetime

需要更多帮助?从社区成员和 Google SecOps 专业人士那里获得解答。