aliyun-log-python-sdk 0.9.46__tar.gz → 0.9.47__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {aliyun_log_python_sdk-0.9.46/aliyun_log_python_sdk.egg-info → aliyun_log_python_sdk-0.9.47}/PKG-INFO +3 -1
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/README.md +12 -1
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/__init__.py +4 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/__init__.pyi +4 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/auth.py +8 -14
- aliyun_log_python_sdk-0.9.47/aliyun/log/deletelogsv2request.py +114 -0
- aliyun_log_python_sdk-0.9.47/aliyun/log/deletelogsv2request.pyi +17 -0
- aliyun_log_python_sdk-0.9.47/aliyun/log/deletelogsv2response.py +23 -0
- aliyun_log_python_sdk-0.9.47/aliyun/log/deletelogsv2response.pyi +10 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logclient.py +190 -33
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logclient.pyi +8 -1
- aliyun_log_python_sdk-0.9.47/aliyun/log/updatelogsrequest.py +128 -0
- aliyun_log_python_sdk-0.9.47/aliyun/log/updatelogsrequest.pyi +21 -0
- aliyun_log_python_sdk-0.9.47/aliyun/log/updatelogsresponse.py +23 -0
- aliyun_log_python_sdk-0.9.47/aliyun/log/updatelogsresponse.pyi +10 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/version.py +1 -1
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47/aliyun_log_python_sdk.egg-info}/PKG-INFO +3 -1
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun_log_python_sdk.egg-info/SOURCES.txt +10 -3
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun_log_python_sdk.egg-info/requires.txt +2 -0
- aliyun_log_python_sdk-0.9.47/pyproject.toml +6 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/setup.py +2 -0
- aliyun_log_python_sdk-0.9.46/tests/test_alert.py +0 -30
- aliyun_log_python_sdk-0.9.46/tests/test_util.py +0 -16
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/LICENSE +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/MANIFEST.in +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/__init__.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/__init__.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/_proto_py2/__init__.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/_proto_py2/log_logs_pb2.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/_proto_py2/log_logs_raw_pb2.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/acl_config.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/acl_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/async_sql_pb2.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/async_sql_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/common_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/compress.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer/__init__.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer/__init__.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer/checkpoint_tracker.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer/config.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer/config.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer/consumer_client.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer/exceptions.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer/fetched_log_group.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer/heart_beat.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer/preprocessor.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer/py.typed +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer/shard_worker.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer/tasks.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer/tasks.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer/worker.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer/worker.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer_group_request.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/consumer_group_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/credentials.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/credentials.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/cursor_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/cursor_response.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/cursor_time_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/cursor_time_response.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/delete_async_sql_request.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/deletelogsrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/deletelogssresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/es_migration/__init__.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/es_migration/doc_logitem_converter.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/es_migration/index_logstore_mappings.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/es_migration/mapping_index_converter.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/es_migration/migration_log.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/es_migration/migration_manager.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/es_migration/migration_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/es_migration/migration_task.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/es_migration/util.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_config_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/__init__.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/config_parser.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/etl_util.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/exceptions.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/restrict_config_parser.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/runner.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/settings.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/trans_comp/__init__.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/trans_comp/trans_base.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/trans_comp/trans_csv.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/trans_comp/trans_json.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/trans_comp/trans_kv.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/trans_comp/trans_lookup.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/trans_comp/trans_mv.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/trans_comp/trans_regex.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/trans_comp/trans_set_field.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/transform/__init__.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/transform/condition_list.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/transform/condition_transform.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/transform/condition_util.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/transform/transform_base.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/transform/transform_list.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/etl_core/transform/transform_meta.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/export_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/ext/__init__.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/ext/jupyter_magic.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/ext/syslogclient.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/external_store_config.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/external_store_config_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/get_async_sql_request.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/getcontextlogsresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/getdeletelogsstatusrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/getdeletelogsstatusresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/gethistogramsrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/gethistogramsrequest.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/gethistogramsresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/gethistogramsresponse.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/getlogsrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/getlogsrequest.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/getlogsresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/getlogsresponse.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/histogram.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/index_config.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/index_config.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/index_config_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/ingestion_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/job.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/listdeletelogsstasksrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/listdeletelogsstasksresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/listlogstoresrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/listlogstoresrequest.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/listlogstoresresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/listlogstoresresponse.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/listtopicsrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/listtopicsrequest.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/listtopicsresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/listtopicsresponse.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/log_logs_pb2.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/log_logs_raw_pb2.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logclient_core.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logclient_operator.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logexception.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logexception.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logger_hanlder.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logitem.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logitem.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logresponse.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logstore_config_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logtail_config_detail.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logtail_config_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logtail_pipeline_config_detail.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/logtail_pipeline_config_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/machine_group_detail.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/machine_group_detail.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/machinegroup_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/metering_mode_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/metering_mode_response.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/multimodal_config_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/multimodal_config_response.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/object_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/object_response.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/odps_sink.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/oss_sink.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/pluralize.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/project_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/proto.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/pulllog_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/pulllog_response.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/putlogsrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/putlogsrequest.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/putlogsresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/putlogsresponse.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/py.typed +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/queriedlog.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/queriedlog.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/rebuild_index_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/resource_params.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/resource_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/scheduled_sql.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/scheduled_sql_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/shard_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/shipper_config.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/shipper_config.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/shipper_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/sink.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/sql_instance_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/store_view.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/store_view.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/store_view_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/store_view_response.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/submit_async_sql_request.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/submit_async_sql_request.pyi +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/substore_config_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/tag_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/topostore_params.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/topostore_response.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/log/util.py +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun/py.typed +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun_log_python_sdk.egg-info/dependency_links.txt +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/aliyun_log_python_sdk.egg-info/top_level.txt +0 -0
- {aliyun_log_python_sdk-0.9.46 → aliyun_log_python_sdk-0.9.47}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: aliyun-log-python-sdk
|
|
3
|
-
Version: 0.9.
|
|
3
|
+
Version: 0.9.47
|
|
4
4
|
Summary: Aliyun log service Python client SDK
|
|
5
5
|
Home-page: https://github.com/aliyun/aliyun-log-python-sdk
|
|
6
6
|
Author: Aliyun
|
|
@@ -26,6 +26,8 @@ Requires-Dist: protobuf<6.0.0,>=3.20.3
|
|
|
26
26
|
Requires-Dist: lz4
|
|
27
27
|
Provides-Extra: test
|
|
28
28
|
Requires-Dist: pytest; extra == "test"
|
|
29
|
+
Requires-Dist: pytest-mock; extra == "test"
|
|
30
|
+
Requires-Dist: responses; extra == "test"
|
|
29
31
|
Requires-Dist: lz4; extra == "test"
|
|
30
32
|
Requires-Dist: virtualenv; extra == "test"
|
|
31
33
|
Requires-Dist: zstandard; extra == "test"
|
|
@@ -2,11 +2,22 @@
|
|
|
2
2
|
|
|
3
3
|
[](http://aliyun-log-python-sdk.readthedocs.io/?badge=latest)
|
|
4
4
|
[](https://badge.fury.io/py/aliyun-log-python-sdk)
|
|
5
|
-
[](https://github.com/aliyun/aliyun-log-python-sdk/actions/workflows/build.yaml)
|
|
6
|
+
[](https://github.com/aliyun/aliyun-log-python-sdk/actions/workflows/py2-build.yaml)
|
|
6
7
|
[](https://pypi.python.org/pypi/aliyun-log-python-sdk/)
|
|
7
8
|
[](https://pypi.python.org/pypi/aliyun-log-python-sdk/)
|
|
8
9
|
[](https://github.com/aliyun/aliyun-log-python-sdk/blob/master/LICENSE)
|
|
9
10
|
|
|
11
|
+
### CI status
|
|
12
|
+
|
|
13
|
+
| Python | Status |
|
|
14
|
+
|---|---|
|
|
15
|
+
| 2.7 | [](https://github.com/aliyun/aliyun-log-python-sdk/actions/workflows/py2-build.yaml?query=branch%3Amaster) |
|
|
16
|
+
| 3.6 | [](https://github.com/aliyun/aliyun-log-python-sdk/actions/workflows/py2-build.yaml?query=branch%3Amaster) |
|
|
17
|
+
| 3.7 | [](https://github.com/aliyun/aliyun-log-python-sdk/actions/workflows/py2-build.yaml?query=branch%3Amaster) |
|
|
18
|
+
| 3.8 | [](https://github.com/aliyun/aliyun-log-python-sdk/actions/workflows/build.yaml?query=branch%3Amaster) |
|
|
19
|
+
| 3.12 | [](https://github.com/aliyun/aliyun-log-python-sdk/actions/workflows/build.yaml?query=branch%3Amaster) |
|
|
20
|
+
|
|
10
21
|
[中文版README](https://github.com/aliyun/aliyun-log-python-sdk/blob/master/README_CN.md)
|
|
11
22
|
|
|
12
23
|
## Introduction
|
|
@@ -39,6 +39,10 @@ from .proto import LogGroupRaw as LogGroup
|
|
|
39
39
|
from .rebuild_index_response import *
|
|
40
40
|
from .deletelogsrequest import *
|
|
41
41
|
from .deletelogssresponse import *
|
|
42
|
+
from .deletelogsv2request import *
|
|
43
|
+
from .deletelogsv2response import *
|
|
44
|
+
from .updatelogsrequest import *
|
|
45
|
+
from .updatelogsresponse import *
|
|
42
46
|
from .getdeletelogsstatusrequest import *
|
|
43
47
|
from .getdeletelogsstatusresponse import *
|
|
44
48
|
from .listdeletelogsstasksrequest import *
|
|
@@ -39,6 +39,10 @@ from .proto import LogGroupRaw as LogGroup
|
|
|
39
39
|
from .rebuild_index_response import CreateRebuildIndexResponse as CreateRebuildIndexResponse, GetRebuildIndexResponse as GetRebuildIndexResponse
|
|
40
40
|
from .deletelogsrequest import DeleteLogsRequest as DeleteLogsRequest
|
|
41
41
|
from .deletelogssresponse import DeleteLogsResponse as DeleteLogsResponse
|
|
42
|
+
from .deletelogsv2request import DeleteLogsV2Request as DeleteLogsV2Request
|
|
43
|
+
from .deletelogsv2response import DeleteLogsV2Response as DeleteLogsV2Response
|
|
44
|
+
from .updatelogsrequest import UpdateLogsRequest as UpdateLogsRequest
|
|
45
|
+
from .updatelogsresponse import UpdateLogsResponse as UpdateLogsResponse
|
|
42
46
|
from .getdeletelogsstatusrequest import GetDeleteLogsStatusRequest as GetDeleteLogsStatusRequest
|
|
43
47
|
from .getdeletelogsstatusresponse import GetDeleteLogsStatusResponse as GetDeleteLogsStatusResponse
|
|
44
48
|
from .listdeletelogsstasksrequest import ListDeleteLogsTasksRequest as ListDeleteLogsTasksRequest
|
|
@@ -165,20 +165,14 @@ class AuthV4(AuthBase):
|
|
|
165
165
|
|
|
166
166
|
@staticmethod
|
|
167
167
|
def _v4_uri_encode(raw_text):
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
if ('A' <= c <= 'Z') or ('a' <= c <= 'z') \
|
|
177
|
-
or ('0' <= c <= '9') or c in ['_', '-', '~', '.']:
|
|
178
|
-
res += c
|
|
179
|
-
else:
|
|
180
|
-
res += "%{0:02X}".format(ord(c))
|
|
181
|
-
return res
|
|
168
|
+
# RFC 3986 unreserved = A-Z a-z 0-9 _ . - ~; everything else
|
|
169
|
+
# percent-encoded as UTF-8 bytes. Py2 urllib.quote omits ~ from
|
|
170
|
+
# its default safe set, so we pass safe='~' for parity with py3.
|
|
171
|
+
if isinstance(raw_text, bytes):
|
|
172
|
+
data = raw_text
|
|
173
|
+
else:
|
|
174
|
+
data = u'{0}'.format(raw_text).encode('utf-8')
|
|
175
|
+
return urlquote(data, safe='~')
|
|
182
176
|
|
|
183
177
|
@staticmethod
|
|
184
178
|
def build_sign_key(key, region, date, string_to_sign):
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
# encoding: utf-8
|
|
3
|
+
|
|
4
|
+
# Copyright (C) Alibaba Cloud Computing
|
|
5
|
+
# All rights reserved.
|
|
6
|
+
|
|
7
|
+
from .logrequest import LogRequest
|
|
8
|
+
from .util import parse_timestamp
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class DeleteLogsV2Request(LogRequest):
|
|
12
|
+
"""The request used to delete logs from a logstore.
|
|
13
|
+
|
|
14
|
+
:type project: string
|
|
15
|
+
:param project: project name
|
|
16
|
+
|
|
17
|
+
:type logstore: string
|
|
18
|
+
:param logstore: logstore name
|
|
19
|
+
|
|
20
|
+
:type fromTime: int/string
|
|
21
|
+
:param fromTime: the begin time
|
|
22
|
+
|
|
23
|
+
:type toTime: int/string
|
|
24
|
+
:param toTime: the end time
|
|
25
|
+
|
|
26
|
+
:type query: string
|
|
27
|
+
:param query: user defined query
|
|
28
|
+
|
|
29
|
+
:type rowId: string
|
|
30
|
+
:param rowId: row id of the log
|
|
31
|
+
"""
|
|
32
|
+
|
|
33
|
+
def __init__(self, project=None, logstore=None, fromTime=None, toTime=None, query=None, rowId=None):
|
|
34
|
+
LogRequest.__init__(self, project)
|
|
35
|
+
self.logstore = logstore
|
|
36
|
+
self.fromTime = parse_timestamp(fromTime) if fromTime is not None else fromTime
|
|
37
|
+
self.toTime = parse_timestamp(toTime) if toTime is not None else toTime
|
|
38
|
+
self.query = query
|
|
39
|
+
self.rowId = rowId
|
|
40
|
+
|
|
41
|
+
def get_logstore(self):
|
|
42
|
+
"""Get logstore name.
|
|
43
|
+
|
|
44
|
+
:return: string, logstore name.
|
|
45
|
+
"""
|
|
46
|
+
return self.logstore if self.logstore else ''
|
|
47
|
+
|
|
48
|
+
def set_logstore(self, logstore):
|
|
49
|
+
"""Set logstore name.
|
|
50
|
+
|
|
51
|
+
:type logstore: string
|
|
52
|
+
:param logstore: logstore name
|
|
53
|
+
"""
|
|
54
|
+
self.logstore = logstore
|
|
55
|
+
|
|
56
|
+
def get_from(self):
|
|
57
|
+
"""Get begin time.
|
|
58
|
+
|
|
59
|
+
:return: int, begin time
|
|
60
|
+
"""
|
|
61
|
+
return self.fromTime
|
|
62
|
+
|
|
63
|
+
def set_from(self, fromTime):
|
|
64
|
+
"""Set begin time.
|
|
65
|
+
|
|
66
|
+
:type fromTime: int/string
|
|
67
|
+
:param fromTime: begin time
|
|
68
|
+
"""
|
|
69
|
+
self.fromTime = parse_timestamp(fromTime) if fromTime is not None else fromTime
|
|
70
|
+
|
|
71
|
+
def get_to(self):
|
|
72
|
+
"""Get end time.
|
|
73
|
+
|
|
74
|
+
:return: int, end time
|
|
75
|
+
"""
|
|
76
|
+
return self.toTime
|
|
77
|
+
|
|
78
|
+
def set_to(self, toTime):
|
|
79
|
+
"""Set end time.
|
|
80
|
+
|
|
81
|
+
:type toTime: int/string
|
|
82
|
+
:param toTime: end time
|
|
83
|
+
"""
|
|
84
|
+
self.toTime = parse_timestamp(toTime) if toTime is not None else toTime
|
|
85
|
+
|
|
86
|
+
def get_query(self):
|
|
87
|
+
"""Get user defined query.
|
|
88
|
+
|
|
89
|
+
:return: string, user defined query
|
|
90
|
+
"""
|
|
91
|
+
return self.query
|
|
92
|
+
|
|
93
|
+
def set_query(self, query):
|
|
94
|
+
"""Set user defined query.
|
|
95
|
+
|
|
96
|
+
:type query: string
|
|
97
|
+
:param query: user defined query
|
|
98
|
+
"""
|
|
99
|
+
self.query = query
|
|
100
|
+
|
|
101
|
+
def get_row_id(self):
|
|
102
|
+
"""Get row id.
|
|
103
|
+
|
|
104
|
+
:return: string, row id
|
|
105
|
+
"""
|
|
106
|
+
return self.rowId
|
|
107
|
+
|
|
108
|
+
def set_row_id(self, rowId):
|
|
109
|
+
"""Set row id.
|
|
110
|
+
|
|
111
|
+
:type rowId: string
|
|
112
|
+
:param rowId: row id
|
|
113
|
+
"""
|
|
114
|
+
self.rowId = rowId
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
from typing import Optional, Union
|
|
3
|
+
|
|
4
|
+
from .logrequest import LogRequest
|
|
5
|
+
|
|
6
|
+
class DeleteLogsV2Request(LogRequest):
|
|
7
|
+
def __init__(self, project: Optional[str] = ..., logstore: Optional[str] = ..., fromTime: Optional[Union[int, str]] = ..., toTime: Optional[Union[int, str]] = ..., query: Optional[str] = ..., rowId: Optional[str] = ...) -> None: ...
|
|
8
|
+
def get_logstore(self) -> str: ...
|
|
9
|
+
def set_logstore(self, logstore: str) -> None: ...
|
|
10
|
+
def get_from(self) -> Optional[int]: ...
|
|
11
|
+
def set_from(self, fromTime: Optional[Union[int, str]]) -> None: ...
|
|
12
|
+
def get_to(self) -> Optional[int]: ...
|
|
13
|
+
def set_to(self, toTime: Optional[Union[int, str]]) -> None: ...
|
|
14
|
+
def get_query(self) -> Optional[str]: ...
|
|
15
|
+
def set_query(self, query: Optional[str]) -> None: ...
|
|
16
|
+
def get_row_id(self) -> Optional[str]: ...
|
|
17
|
+
def set_row_id(self, rowId: Optional[str]) -> None: ...
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
# encoding: utf-8
|
|
3
|
+
|
|
4
|
+
# Copyright (C) Alibaba Cloud Computing
|
|
5
|
+
# All rights reserved.
|
|
6
|
+
|
|
7
|
+
from .logresponse import LogResponse
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class DeleteLogsV2Response(LogResponse):
|
|
11
|
+
"""The response of the DeleteLogsV2 API from log."""
|
|
12
|
+
|
|
13
|
+
def __init__(self, resp, header):
|
|
14
|
+
LogResponse.__init__(self, header, resp)
|
|
15
|
+
self.affected_rows = resp.get('affected_rows', 0)
|
|
16
|
+
|
|
17
|
+
def get_affected_rows(self):
|
|
18
|
+
return self.affected_rows
|
|
19
|
+
|
|
20
|
+
def log_print(self):
|
|
21
|
+
print('DeleteLogsV2Response:')
|
|
22
|
+
print('headers:', self.get_all_headers())
|
|
23
|
+
print('affected_rows:', self.affected_rows)
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
from typing import Any, Dict
|
|
3
|
+
|
|
4
|
+
from .logresponse import LogResponse
|
|
5
|
+
|
|
6
|
+
class DeleteLogsV2Response(LogResponse):
|
|
7
|
+
affected_rows: int
|
|
8
|
+
def __init__(self, resp: Dict[str, Any], header: Dict[str, Any]) -> None: ...
|
|
9
|
+
def get_affected_rows(self) -> int: ...
|
|
10
|
+
def log_print(self) -> None: ...
|
|
@@ -21,12 +21,16 @@ from .scheduled_sql_response import *
|
|
|
21
21
|
from itertools import cycle
|
|
22
22
|
from .consumer_group_request import *
|
|
23
23
|
from .consumer_group_response import *
|
|
24
|
-
from .getlogsrequest import *
|
|
25
|
-
from .cursor_response import GetCursorResponse
|
|
26
|
-
from .cursor_time_response import GetCursorTimeResponse
|
|
27
|
-
from .gethistogramsresponse import GetHistogramsResponse
|
|
28
|
-
from .deletelogssresponse import DeleteLogsResponse
|
|
29
|
-
from .
|
|
24
|
+
from .getlogsrequest import *
|
|
25
|
+
from .cursor_response import GetCursorResponse
|
|
26
|
+
from .cursor_time_response import GetCursorTimeResponse
|
|
27
|
+
from .gethistogramsresponse import GetHistogramsResponse
|
|
28
|
+
from .deletelogssresponse import DeleteLogsResponse
|
|
29
|
+
from .deletelogsv2request import DeleteLogsV2Request
|
|
30
|
+
from .deletelogsv2response import DeleteLogsV2Response
|
|
31
|
+
from .updatelogsrequest import UpdateLogsRequest
|
|
32
|
+
from .updatelogsresponse import UpdateLogsResponse
|
|
33
|
+
from .getlogsresponse import GetLogsResponse
|
|
30
34
|
from .getdeletelogsstatusresponse import GetDeleteLogsStatusResponse
|
|
31
35
|
from .listdeletelogsstasksresponse import ListDeleteLogsTasksResponse
|
|
32
36
|
from .getcontextlogsresponse import GetContextLogsResponse
|
|
@@ -566,9 +570,9 @@ class LogClient(object):
|
|
|
566
570
|
(resp, header) = self._send("GET", project, None, resource, params, headers)
|
|
567
571
|
return GetHistogramsResponse(resp, header)
|
|
568
572
|
|
|
569
|
-
def delete_logs(self, request):
|
|
570
|
-
""" delete logs of requested query from log service.
|
|
571
|
-
Unsuccessful operation will cause an LogException.
|
|
573
|
+
def delete_logs(self, request):
|
|
574
|
+
""" delete logs of requested query from log service.
|
|
575
|
+
Unsuccessful operation will cause an LogException.
|
|
572
576
|
|
|
573
577
|
:type request: DeleteLogsRequest
|
|
574
578
|
:param request: the DeleteLogsRequest request parameters class.
|
|
@@ -595,12 +599,159 @@ class LogClient(object):
|
|
|
595
599
|
resource = "/logstores/" + logstore + "/deletelogtasks"
|
|
596
600
|
body_str = six.b(json.dumps(params))
|
|
597
601
|
headers["x-log-bodyrawsize"] = str(len(body_str))
|
|
598
|
-
(resp, header) = self._send("POST", project, body_str, resource, None, headers)
|
|
599
|
-
return DeleteLogsResponse(resp, header)
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
602
|
+
(resp, header) = self._send("POST", project, body_str, resource, None, headers)
|
|
603
|
+
return DeleteLogsResponse(resp, header)
|
|
604
|
+
|
|
605
|
+
@staticmethod
|
|
606
|
+
def _log_item_to_update_data(log_item):
|
|
607
|
+
if log_item is None:
|
|
608
|
+
return None
|
|
609
|
+
if hasattr(log_item, 'get_contents'):
|
|
610
|
+
return json.dumps(dict(log_item.get_contents()))
|
|
611
|
+
if isinstance(log_item, dict):
|
|
612
|
+
return json.dumps(log_item)
|
|
613
|
+
return log_item
|
|
614
|
+
|
|
615
|
+
@staticmethod
|
|
616
|
+
def _choose_row_id(rowid, row_id):
|
|
617
|
+
return rowid if rowid is not None else row_id
|
|
618
|
+
|
|
619
|
+
def delete_logs_v2(self, request=None, project=None, logstore=None, from_time=None, to_time=None,
|
|
620
|
+
query=None, rowid=None, row_id=None):
|
|
621
|
+
"""Delete logs from a logstore.
|
|
622
|
+
|
|
623
|
+
Unsuccessful operation will cause an LogException.
|
|
624
|
+
|
|
625
|
+
:type request: DeleteLogsV2Request
|
|
626
|
+
:param request: the DeleteLogsV2Request request parameters class.
|
|
627
|
+
|
|
628
|
+
:type project: string
|
|
629
|
+
:param project: project name
|
|
630
|
+
|
|
631
|
+
:type logstore: string
|
|
632
|
+
:param logstore: logstore name
|
|
633
|
+
|
|
634
|
+
:type from_time: int/string
|
|
635
|
+
:param from_time: the begin time
|
|
636
|
+
|
|
637
|
+
:type to_time: int/string
|
|
638
|
+
:param to_time: the end time
|
|
639
|
+
|
|
640
|
+
:type query: string
|
|
641
|
+
:param query: user defined query
|
|
642
|
+
|
|
643
|
+
:type rowid: string
|
|
644
|
+
:param rowid: row id of the log
|
|
645
|
+
|
|
646
|
+
:type row_id: string
|
|
647
|
+
:param row_id: row id of the log
|
|
648
|
+
|
|
649
|
+
:return: DeleteLogsV2Response
|
|
650
|
+
|
|
651
|
+
:raise: LogException
|
|
652
|
+
"""
|
|
653
|
+
if request is None:
|
|
654
|
+
request = DeleteLogsV2Request(project, logstore, from_time, to_time, query,
|
|
655
|
+
self._choose_row_id(rowid, row_id))
|
|
656
|
+
|
|
657
|
+
body = {}
|
|
658
|
+
if request.get_from() is not None:
|
|
659
|
+
body['from'] = request.get_from()
|
|
660
|
+
if request.get_to() is not None:
|
|
661
|
+
body['to'] = request.get_to()
|
|
662
|
+
if request.get_query() is not None:
|
|
663
|
+
body['query'] = request.get_query()
|
|
664
|
+
if request.get_row_id() is not None:
|
|
665
|
+
body['rowId'] = request.get_row_id()
|
|
666
|
+
|
|
667
|
+
body_str = six.b(json.dumps(body))
|
|
668
|
+
headers = {
|
|
669
|
+
'Content-Type': 'application/json',
|
|
670
|
+
'x-log-bodyrawsize': str(len(body_str))
|
|
671
|
+
}
|
|
672
|
+
logstore = request.get_logstore()
|
|
673
|
+
project = request.get_project()
|
|
674
|
+
resource = "/logstores/" + logstore + "/deletelogs"
|
|
675
|
+
(resp, header) = self._send("POST", project, body_str, resource, None, headers)
|
|
676
|
+
return DeleteLogsV2Response(resp, header)
|
|
677
|
+
|
|
678
|
+
def update_logs(self, request=None, project=None, logstore=None, from_time=None, to_time=None,
|
|
679
|
+
query=None, rowid=None, row_id=None, log_item=None, update_mode=None, data=None):
|
|
680
|
+
"""Update logs in a logstore.
|
|
681
|
+
|
|
682
|
+
Unsuccessful operation will cause an LogException.
|
|
683
|
+
|
|
684
|
+
:type request: UpdateLogsRequest
|
|
685
|
+
:param request: the UpdateLogsRequest request parameters class.
|
|
686
|
+
|
|
687
|
+
:type project: string
|
|
688
|
+
:param project: project name
|
|
689
|
+
|
|
690
|
+
:type logstore: string
|
|
691
|
+
:param logstore: logstore name
|
|
692
|
+
|
|
693
|
+
:type from_time: int/string
|
|
694
|
+
:param from_time: the begin time
|
|
695
|
+
|
|
696
|
+
:type to_time: int/string
|
|
697
|
+
:param to_time: the end time
|
|
698
|
+
|
|
699
|
+
:type query: string
|
|
700
|
+
:param query: user defined query
|
|
701
|
+
|
|
702
|
+
:type rowid: string
|
|
703
|
+
:param rowid: row id of the log
|
|
704
|
+
|
|
705
|
+
:type row_id: string
|
|
706
|
+
:param row_id: row id of the log
|
|
707
|
+
|
|
708
|
+
:type log_item: LogItem/dict
|
|
709
|
+
:param log_item: fields to update
|
|
710
|
+
|
|
711
|
+
:type update_mode: string
|
|
712
|
+
:param update_mode: update mode
|
|
713
|
+
|
|
714
|
+
:type data: string
|
|
715
|
+
:param data: update data
|
|
716
|
+
|
|
717
|
+
:return: UpdateLogsResponse
|
|
718
|
+
|
|
719
|
+
:raise: LogException
|
|
720
|
+
"""
|
|
721
|
+
if request is None:
|
|
722
|
+
if data is None:
|
|
723
|
+
data = self._log_item_to_update_data(log_item)
|
|
724
|
+
request = UpdateLogsRequest(project, logstore, from_time, to_time, query,
|
|
725
|
+
self._choose_row_id(rowid, row_id), update_mode, data)
|
|
726
|
+
|
|
727
|
+
body = {}
|
|
728
|
+
if request.get_from() is not None:
|
|
729
|
+
body['from'] = request.get_from()
|
|
730
|
+
if request.get_to() is not None:
|
|
731
|
+
body['to'] = request.get_to()
|
|
732
|
+
if request.get_query() is not None:
|
|
733
|
+
body['query'] = request.get_query()
|
|
734
|
+
if request.get_row_id() is not None:
|
|
735
|
+
body['rowId'] = request.get_row_id()
|
|
736
|
+
if request.get_update_mode() is not None:
|
|
737
|
+
body['updateMode'] = request.get_update_mode()
|
|
738
|
+
if request.get_data() is not None:
|
|
739
|
+
body['data'] = request.get_data()
|
|
740
|
+
|
|
741
|
+
body_str = six.b(json.dumps(body))
|
|
742
|
+
headers = {
|
|
743
|
+
'Content-Type': 'application/json',
|
|
744
|
+
'x-log-bodyrawsize': str(len(body_str))
|
|
745
|
+
}
|
|
746
|
+
logstore = request.get_logstore()
|
|
747
|
+
project = request.get_project()
|
|
748
|
+
resource = "/logstores/" + logstore + "/updatelogs"
|
|
749
|
+
(resp, header) = self._send("POST", project, body_str, resource, None, headers)
|
|
750
|
+
return UpdateLogsResponse(resp, header)
|
|
751
|
+
|
|
752
|
+
def get_delete_logs_status(self, request):
|
|
753
|
+
""" Get get_delete_logs_status of requested logstore from log service.
|
|
754
|
+
Unsuccessful operation will cause an LogException.
|
|
604
755
|
|
|
605
756
|
:type request: GetDeleteLogsStatusRequest
|
|
606
757
|
:param request: the GetDeleteLogsStatusRequest request parameters class.
|
|
@@ -1470,9 +1621,9 @@ class LogClient(object):
|
|
|
1470
1621
|
batch_size=batch_size, compress=compress, encodings=encodings,
|
|
1471
1622
|
shard_list=shard_list, no_escape=no_escape, query=query, processor=processor)
|
|
1472
1623
|
|
|
1473
|
-
def create_logstore(self, project_name, logstore_name,
|
|
1474
|
-
ttl=30,
|
|
1475
|
-
shard_count=2,
|
|
1624
|
+
def create_logstore(self, project_name, logstore_name,
|
|
1625
|
+
ttl=30,
|
|
1626
|
+
shard_count=2,
|
|
1476
1627
|
enable_tracking=False,
|
|
1477
1628
|
append_meta=False,
|
|
1478
1629
|
auto_split=True,
|
|
@@ -1480,10 +1631,11 @@ class LogClient(object):
|
|
|
1480
1631
|
preserve_storage=False,
|
|
1481
1632
|
encrypt_conf=None,
|
|
1482
1633
|
telemetry_type='',
|
|
1483
|
-
hot_ttl=-1,
|
|
1484
|
-
mode = None,
|
|
1485
|
-
infrequent_access_ttl=-1
|
|
1486
|
-
|
|
1634
|
+
hot_ttl=-1,
|
|
1635
|
+
mode = None,
|
|
1636
|
+
infrequent_access_ttl=-1,
|
|
1637
|
+
enable_modify=False
|
|
1638
|
+
):
|
|
1487
1639
|
""" create log store
|
|
1488
1640
|
Unsuccessful operation will cause an LogException.
|
|
1489
1641
|
|
|
@@ -1535,12 +1687,15 @@ class LogClient(object):
|
|
|
1535
1687
|
:type infrequent_access_ttl: int
|
|
1536
1688
|
:param infrequent_access_ttl: infrequent access storage time
|
|
1537
1689
|
|
|
1538
|
-
:type hot_ttl: int
|
|
1539
|
-
:param hot_ttl: the life cycle of hot storage,[0-hot_ttl]is hot storage, (hot_ttl-ttl] is warm storage, if hot_ttl=-1, it means [0-ttl]is all hot storage
|
|
1540
|
-
|
|
1541
|
-
:
|
|
1542
|
-
|
|
1543
|
-
|
|
1690
|
+
:type hot_ttl: int
|
|
1691
|
+
:param hot_ttl: the life cycle of hot storage,[0-hot_ttl]is hot storage, (hot_ttl-ttl] is warm storage, if hot_ttl=-1, it means [0-ttl]is all hot storage
|
|
1692
|
+
|
|
1693
|
+
:type enable_modify: bool
|
|
1694
|
+
:param enable_modify: enable log modification and deletion, default is False
|
|
1695
|
+
|
|
1696
|
+
:return: CreateLogStoreResponse
|
|
1697
|
+
|
|
1698
|
+
:raise: LogException
|
|
1544
1699
|
"""
|
|
1545
1700
|
if preserve_storage:
|
|
1546
1701
|
ttl = 3650
|
|
@@ -1555,11 +1710,13 @@ class LogClient(object):
|
|
|
1555
1710
|
"enable_tracking": enable_tracking,
|
|
1556
1711
|
"autoSplit": auto_split,
|
|
1557
1712
|
"maxSplitShard": max_split_shard,
|
|
1558
|
-
"appendMeta": append_meta,
|
|
1559
|
-
"telemetryType": telemetry_type
|
|
1560
|
-
}
|
|
1561
|
-
if
|
|
1562
|
-
body[
|
|
1713
|
+
"appendMeta": append_meta,
|
|
1714
|
+
"telemetryType": telemetry_type
|
|
1715
|
+
}
|
|
1716
|
+
if enable_modify:
|
|
1717
|
+
body["enableModify"] = enable_modify
|
|
1718
|
+
if hot_ttl !=-1:
|
|
1719
|
+
body['hot_ttl'] = hot_ttl
|
|
1563
1720
|
if encrypt_conf != None:
|
|
1564
1721
|
body["encrypt_conf"] = encrypt_conf
|
|
1565
1722
|
if mode != None:
|
|
@@ -9,6 +9,8 @@ from .cursor_time_response import GetCursorTimeResponse
|
|
|
9
9
|
from .delete_async_sql_request import DeleteAsyncSqlRequest
|
|
10
10
|
from .deletelogsrequest import DeleteLogsRequest
|
|
11
11
|
from .deletelogssresponse import DeleteLogsResponse
|
|
12
|
+
from .deletelogsv2request import DeleteLogsV2Request
|
|
13
|
+
from .deletelogsv2response import DeleteLogsV2Response
|
|
12
14
|
from .etl_config_response import CreateEtlResponse, DeleteEtlResponse, GetEtlResponse, ListEtlsResponse, StartEtlResponse, StopEtlResponse, UpdateEtlResponse
|
|
13
15
|
from .export_response import CreateExportResponse, DeleteExportResponse, GetExportResponse, ListExportResponse, UpdateExportResponse
|
|
14
16
|
from .external_store_config import ExternalStoreConfigBase
|
|
@@ -31,6 +33,7 @@ from .listlogstoresrequest import ListLogstoresRequest
|
|
|
31
33
|
from .listlogstoresresponse import ListLogstoresResponse
|
|
32
34
|
from .listtopicsrequest import ListTopicsRequest
|
|
33
35
|
from .listtopicsresponse import ListTopicsResponse
|
|
36
|
+
from .logitem import LogItem
|
|
34
37
|
from .logclient_operator import ResourceUsageResponse, copy_project, list_more, query_more, pull_log_dump, copy_logstore, copy_data, get_resource_usage, arrange_shard, transform_data, copy_dashboard, copy_alert
|
|
35
38
|
from .logexception import LogException
|
|
36
39
|
from .logresponse import LogResponse
|
|
@@ -61,6 +64,8 @@ from .store_view import StoreView
|
|
|
61
64
|
from .store_view_response import CreateStoreViewResponse, DeleteStoreViewResponse, GetStoreViewResponse, ListStoreViewsResponse, UpdateStoreViewResponse
|
|
62
65
|
from .substore_config_response import CreateMetricsStoreResponse, CreateSubStoreResponse, DeleteSubStoreResponse, GetSubStoreResponse, GetSubStoreTTLResponse, ListSubStoreResponse, UpdateSubStoreResponse, UpdateSubStoreTTLResponse
|
|
63
66
|
from .submit_async_sql_request import SubmitAsyncSqlRequest
|
|
67
|
+
from .updatelogsrequest import UpdateLogsRequest
|
|
68
|
+
from .updatelogsresponse import UpdateLogsResponse
|
|
64
69
|
from .tag_response import GetResourceTagsResponse
|
|
65
70
|
from .topostore_params import Topostore, TopostoreNode, TopostoreRelation
|
|
66
71
|
from .topostore_response import CreateTopostoreNodeResponse, CreateTopostoreRelationResponse, CreateTopostoreResponse, DeleteTopostoreNodeResponse, DeleteTopostoreRelationResponse, DeleteTopostoreResponse, GetTopostoreNodeResponse, GetTopostoreRelationResponse, GetTopostoreResponse, ListTopostoreNodesResponse, ListTopostoreRelationsResponse, ListTopostoresResponse, UpdateTopostoreNodeResponse, UpdateTopostoreRelationResponse, UpdateTopostoreResponse, UpsertTopostoreNodeResponse, UpsertTopostoreRelationResponse
|
|
@@ -82,6 +87,8 @@ class LogClient(object):
|
|
|
82
87
|
def list_topics(self, request: ListTopicsRequest) -> ListTopicsResponse: ...
|
|
83
88
|
def get_histograms(self, request: GetHistogramsRequest) -> GetHistogramsResponse: ...
|
|
84
89
|
def delete_logs(self, request: DeleteLogsRequest) -> DeleteLogsResponse: ...
|
|
90
|
+
def delete_logs_v2(self, request: Optional[DeleteLogsV2Request] = ..., project: Optional[str] = ..., logstore: Optional[str] = ..., from_time: Optional[Union[int, str]] = ..., to_time: Optional[Union[int, str]] = ..., query: Optional[str] = ..., rowid: Optional[str] = ..., row_id: Optional[str] = ...) -> DeleteLogsV2Response: ...
|
|
91
|
+
def update_logs(self, request: Optional[UpdateLogsRequest] = ..., project: Optional[str] = ..., logstore: Optional[str] = ..., from_time: Optional[Union[int, str]] = ..., to_time: Optional[Union[int, str]] = ..., query: Optional[str] = ..., rowid: Optional[str] = ..., row_id: Optional[str] = ..., log_item: Optional[Union[LogItem, Dict[str, Any], str]] = ..., update_mode: Optional[str] = ..., data: Optional[str] = ...) -> UpdateLogsResponse: ...
|
|
85
92
|
def get_delete_logs_status(self, request: GetDeleteLogsStatusRequest) -> GetDeleteLogsStatusResponse: ...
|
|
86
93
|
def list_delete_logs_tasks(self, request: ListDeleteLogsTasksRequest) -> ListDeleteLogsTasksResponse: ...
|
|
87
94
|
def get_log(self, project: str, logstore: str, from_time: Union[int, str], to_time: Union[int, str], topic: Optional[str] = ..., query: Optional[str] = ..., reverse: bool = ..., offset: int = ..., size: int = ..., power_sql: bool = ..., scan: bool = ..., forward: bool = ..., accurate_query: bool = ..., from_time_nano_part: int = ..., to_time_nano_part: int = ...) -> GetLogsResponse: ...
|
|
@@ -103,7 +110,7 @@ class LogClient(object):
|
|
|
103
110
|
def pull_logs(self, project_name: str, logstore_name: str, shard_id: int, cursor: str, count: Optional[int] = ..., end_cursor: Optional[str] = ..., compress: Optional[bool] = ..., query: Optional[str] = ..., accept_compress_type: Optional[str] = ..., processor: Optional[str] = ...) -> PullLogResponse: ...
|
|
104
111
|
def pull_log(self, project_name: str, logstore_name: str, shard_id: int, from_time: Union[int, str], to_time: Union[int, str], batch_size: Optional[int] = ..., compress: Optional[bool] = ..., query: Optional[str] = ..., accept_compress_type: Optional[str] = ..., processor: Optional[str] = ...) -> Iterator[PullLogResponse]: ...
|
|
105
112
|
def pull_log_dump(self, project_name: str, logstore_name: str, from_time: Union[int, str], to_time: Union[int, str], file_path: str, batch_size: Optional[int] = ..., compress: Optional[bool] = ..., encodings: Optional[List[str]] = ..., shard_list: Optional[Union[str, List[str]]] = ..., no_escape: Optional[bool] = ..., query: Optional[str] = ..., processor: Optional[str] = ...) -> LogResponse: ...
|
|
106
|
-
def create_logstore(self, project_name: str, logstore_name: str, ttl: int = ..., shard_count: int = ..., enable_tracking: bool = ..., append_meta: bool = ..., auto_split: bool = ..., max_split_shard: int = ..., preserve_storage: bool = ..., encrypt_conf: Optional[Dict[str, Any]] = ..., telemetry_type: str = ..., hot_ttl: int = ..., mode: Optional[str] = ..., infrequent_access_ttl: int = ...) -> CreateLogStoreResponse: ...
|
|
113
|
+
def create_logstore(self, project_name: str, logstore_name: str, ttl: int = ..., shard_count: int = ..., enable_tracking: bool = ..., append_meta: bool = ..., auto_split: bool = ..., max_split_shard: int = ..., preserve_storage: bool = ..., encrypt_conf: Optional[Dict[str, Any]] = ..., telemetry_type: str = ..., hot_ttl: int = ..., mode: Optional[str] = ..., infrequent_access_ttl: int = ..., enable_modify: bool = ...) -> CreateLogStoreResponse: ...
|
|
107
114
|
def delete_logstore(self, project_name: str, logstore_name: str) -> DeleteLogStoreResponse: ...
|
|
108
115
|
def get_logstore(self, project_name: str, logstore_name: str) -> GetLogStoreResponse: ...
|
|
109
116
|
def update_logstore(self, project_name: str, logstore_name: str, ttl: Optional[int] = ..., enable_tracking: Optional[bool] = ..., shard_count: Optional[int] = ..., append_meta: Optional[bool] = ..., auto_split: Optional[bool] = ..., max_split_shard: Optional[int] = ..., preserve_storage: Optional[bool] = ..., encrypt_conf: Optional[Dict[str, Any]] = ..., hot_ttl: int = ..., mode: Optional[str] = ..., telemetry_type: Optional[str] = ..., infrequent_access_ttl: int = ...) -> UpdateLogStoreResponse: ...
|