TIPCommon.smp_time
TIPCommon.smp_time モジュールは、統合内で時間データを処理するための包括的なツールセットを提供します。タイムゾーンの変更、コネクタのタイムスタンプの永続性、アクションとコネクタで実行タイムアウトが近づいていることを検出する重要なモニタリング機能などの複雑なタスクを簡素化します。
時間の変換と操作
これらのユーティリティは、Unix タイムスタンプ、RFC 3339 文字列、Python datetime オブジェクトなど、さまざまな形式間で時間データを変換するための標準化されたメソッドを提供します。
| 関数 | パラメータ | 説明 |
|---|---|---|
change_timezone() |
|
戻り値: datetime.datetimedatetime オブジェクトを新しいタイムゾーンにシフトします。いずれかのタイムゾーン文字列が無効な場合は |
convert_string_to_timestamp() |
|
戻り値: int日時文字列を解析し、同等の Unix タイムスタンプを返します。 |
datetime_to_rfc3339() |
|
戻り値: strdatetime オブジェクトを RFC 3339 準拠の文字列に変換します。 |
get_timestamps() |
|
戻り値: tuple[int, int]範囲の説明と境界文字列に基づいて、開始と終了の Unix タイムスタンプを計算します。 |
get_timestamps_from_range() |
|
戻り値: tuple[datetime, datetime]プラットフォーム固有の期間文字列から派生した開始日時オブジェクトと終了日時オブジェクトを計算します。 |
状態と永続性
コネクタで重複する取り込みを回避するには、「最終実行時間」を保持することが重要です。これらの関数は、プラットフォームと直接やり取りして実行チェックポイントを管理します。
| 関数 | パラメータ | 説明 |
|---|---|---|
get_last_success_time() |
|
戻り値: time(DataModel)最後に成功した実行時間を取得します。存在しない場合は、オフセットに基づいてフォールバックを計算します。 |
save_timestamp() |
|
戻り値: boolアラート バッチ内の最新のタイムスタンプを見つけて保存します。状態が更新された場合は |
siemplify_fetch_timestamp() |
|
戻り値: int | datetime現在の実行チェックポイントをプラットフォーム データベースから直接取得します。 |
siemplify_save_timestamp() |
|
戻り値: Noneプラットフォームの実行チェックポイントを特定の新しい値で更新します。 |
validate_timestamp() |
|
戻り値: datetimeタイムスタンプが許容される期間内であることを確認します。範囲外の場合は |
実行のモニタリング
タイムアウト モニタリングは重要な安全機能です。これらの関数は、スクリプトが処理時間を使い果たしそうになったときにスクリプトを識別し、スクリプトを正常に停止して現在の状態を保存できるようにします。
| 関数 | パラメータ | 説明 |
|---|---|---|
is_approaching_action_timeout() |
|
戻り値: boolアクション スクリプトが終了前の最終バッファ期間内にあるかどうかを確認します。 |
is_approaching_timeout() |
|
戻り値: bool90% の |