aliyun-log-python-sdk 0.9.34__tar.gz → 0.9.35__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.34/aliyun_log_python_sdk.egg-info → aliyun_log_python_sdk-0.9.35}/PKG-INFO +10 -2
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/__init__.py +2 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/trans_comp/trans_kv.py +6 -4
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/logclient.py +127 -0
- aliyun_log_python_sdk-0.9.35/aliyun/log/logtail_pipeline_config_detail.py +135 -0
- aliyun_log_python_sdk-0.9.35/aliyun/log/logtail_pipeline_config_response.py +161 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/version.py +1 -1
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35/aliyun_log_python_sdk.egg-info}/PKG-INFO +10 -2
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun_log_python_sdk.egg-info/SOURCES.txt +3 -0
- aliyun_log_python_sdk-0.9.35/tests/test_logtail_pipeline_config.py +389 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/LICENSE +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/README.md +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/__init__.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/_proto_py2/__init__.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/_proto_py2/log_logs_pb2.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/_proto_py2/log_logs_raw_pb2.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/acl_config.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/acl_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/async_sql_pb2.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/async_sql_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/auth.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/common_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/compress.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/consumer/__init__.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/consumer/checkpoint_tracker.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/consumer/config.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/consumer/consumer_client.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/consumer/exceptions.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/consumer/fetched_log_group.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/consumer/heart_beat.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/consumer/preprocessor.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/consumer/shard_worker.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/consumer/tasks.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/consumer/worker.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/consumer_group_request.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/consumer_group_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/credentials.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/cursor_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/cursor_time_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/delete_async_sql_request.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/deletelogsrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/deletelogssresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/es_migration/__init__.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/es_migration/doc_logitem_converter.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/es_migration/index_logstore_mappings.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/es_migration/mapping_index_converter.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/es_migration/migration_log.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/es_migration/migration_manager.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/es_migration/migration_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/es_migration/migration_task.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/es_migration/util.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_config_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/__init__.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/config_parser.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/etl_util.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/exceptions.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/restrict_config_parser.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/runner.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/settings.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/trans_comp/__init__.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/trans_comp/trans_base.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/trans_comp/trans_csv.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/trans_comp/trans_json.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/trans_comp/trans_lookup.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/trans_comp/trans_mv.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/trans_comp/trans_regex.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/trans_comp/trans_set_field.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/transform/__init__.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/transform/condition_list.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/transform/condition_transform.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/transform/condition_util.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/transform/transform_base.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/transform/transform_list.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/etl_core/transform/transform_meta.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/export_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/ext/__init__.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/ext/jupyter_magic.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/ext/syslogclient.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/external_store_config.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/external_store_config_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/get_async_sql_request.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/getcontextlogsresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/getdeletelogsstatusrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/getdeletelogsstatusresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/gethistogramsrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/gethistogramsresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/getlogsrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/getlogsresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/histogram.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/index_config.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/index_config_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/ingestion_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/job.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/listdeletelogsstasksrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/listdeletelogsstasksresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/listlogstoresrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/listlogstoresresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/listtopicsrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/listtopicsresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/log_logs_pb2.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/log_logs_raw_pb2.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/logclient_core.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/logclient_operator.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/logexception.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/logger_hanlder.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/logitem.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/logrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/logresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/logstore_config_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/logtail_config_detail.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/logtail_config_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/machine_group_detail.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/machinegroup_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/metering_mode_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/odps_sink.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/oss_sink.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/pluralize.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/project_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/proto.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/pulllog_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/putlogsrequest.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/putlogsresponse.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/queriedlog.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/rebuild_index_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/resource_params.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/resource_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/scheduled_sql.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/scheduled_sql_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/shard_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/shipper_config.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/shipper_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/sink.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/sql_instance_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/store_view.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/store_view_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/submit_async_sql_request.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/substore_config_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/tag_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/topostore_params.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/topostore_response.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun/log/util.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun_log_python_sdk.egg-info/dependency_links.txt +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun_log_python_sdk.egg-info/requires.txt +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/aliyun_log_python_sdk.egg-info/top_level.txt +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/setup.cfg +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/setup.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/tests/test_alert.py +0 -0
- {aliyun_log_python_sdk-0.9.34 → aliyun_log_python_sdk-0.9.35}/tests/test_util.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: aliyun-log-python-sdk
|
|
3
|
-
Version: 0.9.
|
|
3
|
+
Version: 0.9.35
|
|
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
|
|
@@ -29,6 +29,14 @@ Requires-Dist: pytest; extra == "test"
|
|
|
29
29
|
Requires-Dist: lz4; extra == "test"
|
|
30
30
|
Requires-Dist: virtualenv; extra == "test"
|
|
31
31
|
Requires-Dist: zstandard; extra == "test"
|
|
32
|
+
Dynamic: author
|
|
33
|
+
Dynamic: classifier
|
|
34
|
+
Dynamic: description
|
|
35
|
+
Dynamic: home-page
|
|
36
|
+
Dynamic: license-file
|
|
37
|
+
Dynamic: provides-extra
|
|
38
|
+
Dynamic: requires-dist
|
|
39
|
+
Dynamic: summary
|
|
32
40
|
|
|
33
41
|
|
|
34
42
|
Python SDK for Alicloud Log Service
|
|
@@ -7,6 +7,8 @@ from .index_config import IndexConfig, IndexKeyConfig, IndexLineConfig
|
|
|
7
7
|
from .listtopicsrequest import ListTopicsRequest
|
|
8
8
|
from .listlogstoresrequest import ListLogstoresRequest
|
|
9
9
|
from .logtail_config_detail import *
|
|
10
|
+
from .logtail_pipeline_config_detail import *
|
|
11
|
+
from .logtail_pipeline_config_response import *
|
|
10
12
|
from .machine_group_detail import MachineGroupDetail
|
|
11
13
|
from .putlogsrequest import PutLogsRequest
|
|
12
14
|
from .shipper_config import ShipperTask, OssShipperConfig, OdpsShipperConfig
|
|
@@ -32,12 +32,14 @@ class kv_transformer(trans_comp_check_mdoe_base):
|
|
|
32
32
|
@staticmethod
|
|
33
33
|
@cached
|
|
34
34
|
def _get_kv_ptn(sep, quote, escape):
|
|
35
|
-
|
|
35
|
+
# Use Unicode characters directly to avoid escape sequence warnings
|
|
36
|
+
# \u4e00-\u9fa5 = Chinese characters, \u0800-\u4e00 = other Unicode range
|
|
37
|
+
p1 = r'(?!{0})([' + '\u4e00-\u9fa5\u0800-\u4e00' + r'\w\.\-]+)\s*{0}\s*([' + '\u4e00-\u9fa5\u0800-\u4e00' + r'\w\.\-]+)'
|
|
36
38
|
if not escape:
|
|
37
|
-
p2 =
|
|
39
|
+
p2 = r'(?!{0})([' + '\u4e00-\u9fa5\u0800-\u4e00' + r'\w\.\-]+)\s*{0}\s*{1}\s*([^{1}]*?)\s*{1}'
|
|
38
40
|
else:
|
|
39
|
-
p2 =
|
|
40
|
-
ps =
|
|
41
|
+
p2 = r'(?!{0})([' + '\u4e00-\u9fa5\u0800-\u4e00' + r'\w\.\-]+)\s*{0}\s*{1}\s*((?:[^{1}]|\\{1})*?[^\\]){1}'
|
|
42
|
+
ps = '|'.join([p1, p2]).format(sep, quote)
|
|
41
43
|
|
|
42
44
|
logger.info(u"trans_comp_kv: get ptn: {0}".format(ps))
|
|
43
45
|
return re.compile(ps)
|
|
@@ -41,6 +41,7 @@ from .logexception import LogException
|
|
|
41
41
|
from .logstore_config_response import *
|
|
42
42
|
from .substore_config_response import *
|
|
43
43
|
from .logtail_config_response import *
|
|
44
|
+
from .logtail_pipeline_config_response import *
|
|
44
45
|
from .machinegroup_response import *
|
|
45
46
|
from .rebuild_index_response import *
|
|
46
47
|
from .project_response import *
|
|
@@ -2328,6 +2329,132 @@ class LogClient(object):
|
|
|
2328
2329
|
(resp, header) = self._send("GET", project_name, None, resource, params, headers)
|
|
2329
2330
|
return ListLogtailConfigResponse(resp, header)
|
|
2330
2331
|
|
|
2332
|
+
def create_logtail_pipeline_config(self, project_name, config_detail):
|
|
2333
|
+
""" create logtail pipeline config in a project
|
|
2334
|
+
Unsuccessful operation will cause an LogException.
|
|
2335
|
+
|
|
2336
|
+
:type project_name: string
|
|
2337
|
+
:param project_name: the Project name
|
|
2338
|
+
|
|
2339
|
+
:type config_detail: LogtailPipelineConfigDetail
|
|
2340
|
+
:param config_detail: the logtail pipeline config detail
|
|
2341
|
+
|
|
2342
|
+
:return: CreateLogtailPipelineConfigResponse
|
|
2343
|
+
|
|
2344
|
+
:raise: LogException
|
|
2345
|
+
"""
|
|
2346
|
+
headers = {}
|
|
2347
|
+
params = {}
|
|
2348
|
+
resource = "/pipelineconfigs"
|
|
2349
|
+
headers['Content-Type'] = 'application/json'
|
|
2350
|
+
body = six.b(json.dumps(config_detail.to_json()))
|
|
2351
|
+
headers['x-log-bodyrawsize'] = str(len(body))
|
|
2352
|
+
(resp, headers) = self._send("POST", project_name, body, resource, params, headers)
|
|
2353
|
+
return CreateLogtailPipelineConfigResponse(headers, resp)
|
|
2354
|
+
|
|
2355
|
+
def update_logtail_pipeline_config(self, project_name, config_detail):
|
|
2356
|
+
""" update logtail pipeline config in a project
|
|
2357
|
+
Unsuccessful operation will cause an LogException.
|
|
2358
|
+
|
|
2359
|
+
:type project_name: string
|
|
2360
|
+
:param project_name: the Project name
|
|
2361
|
+
|
|
2362
|
+
:type config_detail: LogtailPipelineConfigDetail
|
|
2363
|
+
:param config_detail: the logtail pipeline config detail
|
|
2364
|
+
|
|
2365
|
+
:return: UpdateLogtailPipelineConfigResponse
|
|
2366
|
+
|
|
2367
|
+
:raise: LogException
|
|
2368
|
+
"""
|
|
2369
|
+
headers = {}
|
|
2370
|
+
params = {}
|
|
2371
|
+
resource = "/pipelineconfigs/" + config_detail.config_name
|
|
2372
|
+
headers['Content-Type'] = 'application/json'
|
|
2373
|
+
body = six.b(json.dumps(config_detail.to_json()))
|
|
2374
|
+
headers['x-log-bodyrawsize'] = str(len(body))
|
|
2375
|
+
(resp, headers) = self._send("PUT", project_name, body, resource, params, headers)
|
|
2376
|
+
return UpdateLogtailPipelineConfigResponse(headers, resp)
|
|
2377
|
+
|
|
2378
|
+
def delete_logtail_pipeline_config(self, project_name, config_name):
|
|
2379
|
+
""" delete logtail pipeline config in a project
|
|
2380
|
+
Unsuccessful operation will cause an LogException.
|
|
2381
|
+
|
|
2382
|
+
:type project_name: string
|
|
2383
|
+
:param project_name: the Project name
|
|
2384
|
+
|
|
2385
|
+
:type config_name: string
|
|
2386
|
+
:param config_name: the logtail pipeline config name
|
|
2387
|
+
|
|
2388
|
+
:return: DeleteLogtailPipelineConfigResponse
|
|
2389
|
+
|
|
2390
|
+
:raise: LogException
|
|
2391
|
+
"""
|
|
2392
|
+
headers = {}
|
|
2393
|
+
params = {}
|
|
2394
|
+
resource = "/pipelineconfigs/" + config_name
|
|
2395
|
+
(resp, headers) = self._send("DELETE", project_name, None, resource, params, headers)
|
|
2396
|
+
return DeleteLogtailPipelineConfigResponse(headers, resp)
|
|
2397
|
+
|
|
2398
|
+
def get_logtail_pipeline_config(self, project_name, config_name):
|
|
2399
|
+
""" get logtail pipeline config in a project
|
|
2400
|
+
Unsuccessful operation will cause an LogException.
|
|
2401
|
+
|
|
2402
|
+
:type project_name: string
|
|
2403
|
+
:param project_name: the Project name
|
|
2404
|
+
|
|
2405
|
+
:type config_name: string
|
|
2406
|
+
:param config_name: the logtail pipeline config name
|
|
2407
|
+
|
|
2408
|
+
:return: GetLogtailPipelineConfigResponse
|
|
2409
|
+
|
|
2410
|
+
:raise: LogException
|
|
2411
|
+
"""
|
|
2412
|
+
headers = {}
|
|
2413
|
+
params = {}
|
|
2414
|
+
resource = "/pipelineconfigs/" + config_name
|
|
2415
|
+
(resp, headers) = self._send("GET", project_name, None, resource, params, headers)
|
|
2416
|
+
return GetLogtailPipelineConfigResponse(resp, headers)
|
|
2417
|
+
|
|
2418
|
+
def list_logtail_pipeline_config(self, project_name, config_name=None, logstore_name=None, offset=0, size=100):
|
|
2419
|
+
""" list logtail pipeline config names in a project
|
|
2420
|
+
Unsuccessful operation will cause an LogException.
|
|
2421
|
+
|
|
2422
|
+
:type project_name: string
|
|
2423
|
+
:param project_name: the Project name
|
|
2424
|
+
|
|
2425
|
+
:type config_name: string
|
|
2426
|
+
:param config_name: config name to filter
|
|
2427
|
+
|
|
2428
|
+
:type logstore_name: string
|
|
2429
|
+
:param logstore_name: logstore name to filter
|
|
2430
|
+
|
|
2431
|
+
:type offset: int
|
|
2432
|
+
:param offset: the offset of all config names
|
|
2433
|
+
|
|
2434
|
+
:type size: int
|
|
2435
|
+
:param size: the max return names count, -1 means all
|
|
2436
|
+
|
|
2437
|
+
:return: ListLogtailPipelineConfigResponse
|
|
2438
|
+
|
|
2439
|
+
:raise: LogException
|
|
2440
|
+
"""
|
|
2441
|
+
# need to use extended method to get more
|
|
2442
|
+
if int(size) == -1 or int(size) > MAX_LIST_PAGING_SIZE:
|
|
2443
|
+
return list_more(self.list_logtail_pipeline_config, int(offset), int(size), MAX_LIST_PAGING_SIZE,
|
|
2444
|
+
project_name, config_name, logstore_name)
|
|
2445
|
+
|
|
2446
|
+
headers = {}
|
|
2447
|
+
params = {}
|
|
2448
|
+
resource = "/pipelineconfigs"
|
|
2449
|
+
params['offset'] = str(offset)
|
|
2450
|
+
params['size'] = str(size)
|
|
2451
|
+
if config_name:
|
|
2452
|
+
params['configName'] = config_name
|
|
2453
|
+
if logstore_name:
|
|
2454
|
+
params['logstoreName'] = logstore_name
|
|
2455
|
+
(resp, header) = self._send("GET", project_name, None, resource, params, headers)
|
|
2456
|
+
return ListLogtailPipelineConfigResponse(resp, header)
|
|
2457
|
+
|
|
2331
2458
|
def create_machine_group(self, project_name, group_detail):
|
|
2332
2459
|
""" create machine group in a project
|
|
2333
2460
|
Unsuccessful operation will cause an LogException.
|
|
@@ -0,0 +1,135 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
# encoding: utf-8
|
|
3
|
+
|
|
4
|
+
# Copyright (C) Alibaba Cloud Computing
|
|
5
|
+
# All rights reserved.
|
|
6
|
+
|
|
7
|
+
"""
|
|
8
|
+
Logtail Pipeline Config Detail Classes
|
|
9
|
+
|
|
10
|
+
This module provides classes for managing Logtail pipeline configurations.
|
|
11
|
+
"""
|
|
12
|
+
|
|
13
|
+
from __future__ import print_function
|
|
14
|
+
import json
|
|
15
|
+
|
|
16
|
+
__all__ = ['LogtailPipelineConfigDetail']
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class LogtailPipelineConfigDetail(object):
|
|
20
|
+
"""Logtail Pipeline Config Detail
|
|
21
|
+
|
|
22
|
+
:type config_name: string
|
|
23
|
+
:param config_name: config name, can only contain lowercase letters, numbers, - and _,
|
|
24
|
+
must start and end with lowercase letter or number, length between 2-128 characters
|
|
25
|
+
|
|
26
|
+
:type log_sample: string
|
|
27
|
+
:param log_sample: log sample, supports multiple log entries
|
|
28
|
+
|
|
29
|
+
:type global_config: dict
|
|
30
|
+
:param global_config: global configuration
|
|
31
|
+
|
|
32
|
+
:type inputs: list
|
|
33
|
+
:param inputs: input plugin list, currently only allows 1 input plugin
|
|
34
|
+
|
|
35
|
+
:type processors: list
|
|
36
|
+
:param processors: processor plugin list
|
|
37
|
+
|
|
38
|
+
:type aggregators: list
|
|
39
|
+
:param aggregators: aggregator plugin list, maximum 1 aggregator plugin allowed
|
|
40
|
+
|
|
41
|
+
:type flushers: list
|
|
42
|
+
:param flushers: flusher plugin list, currently only allows 1 flusher_sls plugin
|
|
43
|
+
"""
|
|
44
|
+
|
|
45
|
+
def __init__(self, config_name, inputs, flushers, log_sample=None,
|
|
46
|
+
global_config=None, processors=None, aggregators=None):
|
|
47
|
+
"""Initialize a Logtail Pipeline Config Detail
|
|
48
|
+
|
|
49
|
+
:type config_name: string
|
|
50
|
+
:param config_name: config name
|
|
51
|
+
|
|
52
|
+
:type inputs: list
|
|
53
|
+
:param inputs: input plugin list
|
|
54
|
+
|
|
55
|
+
:type flushers: list
|
|
56
|
+
:param flushers: flusher plugin list
|
|
57
|
+
|
|
58
|
+
:type log_sample: string
|
|
59
|
+
:param log_sample: log sample (optional)
|
|
60
|
+
|
|
61
|
+
:type global_config: dict
|
|
62
|
+
:param global_config: global configuration (optional)
|
|
63
|
+
|
|
64
|
+
:type processors: list
|
|
65
|
+
:param processors: processor plugin list (optional)
|
|
66
|
+
|
|
67
|
+
:type aggregators: list
|
|
68
|
+
:param aggregators: aggregator plugin list (optional)
|
|
69
|
+
"""
|
|
70
|
+
self.config_name = config_name
|
|
71
|
+
self.log_sample = log_sample
|
|
72
|
+
self.global_config = global_config if global_config is not None else {}
|
|
73
|
+
self.inputs = inputs if inputs is not None else []
|
|
74
|
+
self.processors = processors if processors is not None else []
|
|
75
|
+
self.aggregators = aggregators if aggregators is not None else []
|
|
76
|
+
self.flushers = flushers if flushers is not None else []
|
|
77
|
+
|
|
78
|
+
def to_json(self):
|
|
79
|
+
"""Convert to JSON object
|
|
80
|
+
|
|
81
|
+
:return: dict object ready for JSON serialization
|
|
82
|
+
"""
|
|
83
|
+
json_value = {
|
|
84
|
+
"configName": self.config_name
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
# Add optional fields
|
|
88
|
+
if self.log_sample:
|
|
89
|
+
json_value["logSample"] = self.log_sample
|
|
90
|
+
|
|
91
|
+
if self.global_config:
|
|
92
|
+
json_value["global"] = self.global_config
|
|
93
|
+
|
|
94
|
+
# Required fields
|
|
95
|
+
json_value["inputs"] = self.inputs
|
|
96
|
+
json_value["flushers"] = self.flushers
|
|
97
|
+
|
|
98
|
+
# Optional fields
|
|
99
|
+
if self.processors:
|
|
100
|
+
json_value["processors"] = self.processors
|
|
101
|
+
|
|
102
|
+
if self.aggregators:
|
|
103
|
+
json_value["aggregators"] = self.aggregators
|
|
104
|
+
|
|
105
|
+
return json_value
|
|
106
|
+
|
|
107
|
+
@staticmethod
|
|
108
|
+
def from_json(json_value):
|
|
109
|
+
"""Create LogtailPipelineConfigDetail from JSON object
|
|
110
|
+
|
|
111
|
+
:type json_value: dict
|
|
112
|
+
:param json_value: JSON object
|
|
113
|
+
|
|
114
|
+
:return: LogtailPipelineConfigDetail object
|
|
115
|
+
"""
|
|
116
|
+
config_name = json_value.get("configName", "")
|
|
117
|
+
log_sample = json_value.get("logSample", None)
|
|
118
|
+
global_config = json_value.get("global", None)
|
|
119
|
+
inputs = json_value.get("inputs", [])
|
|
120
|
+
processors = json_value.get("processors", None)
|
|
121
|
+
aggregators = json_value.get("aggregators", None)
|
|
122
|
+
flushers = json_value.get("flushers", [])
|
|
123
|
+
|
|
124
|
+
return LogtailPipelineConfigDetail(
|
|
125
|
+
config_name=config_name,
|
|
126
|
+
inputs=inputs,
|
|
127
|
+
flushers=flushers,
|
|
128
|
+
log_sample=log_sample,
|
|
129
|
+
global_config=global_config,
|
|
130
|
+
processors=processors,
|
|
131
|
+
aggregators=aggregators
|
|
132
|
+
)
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
#!/usr/bin/env python
|
|
2
|
+
# encoding: utf-8
|
|
3
|
+
|
|
4
|
+
# Copyright (C) Alibaba Cloud Computing
|
|
5
|
+
# All rights reserved.
|
|
6
|
+
|
|
7
|
+
"""
|
|
8
|
+
Logtail Pipeline Config Response Classes
|
|
9
|
+
|
|
10
|
+
This module provides response classes for Logtail pipeline config API operations.
|
|
11
|
+
"""
|
|
12
|
+
|
|
13
|
+
from .logresponse import LogResponse
|
|
14
|
+
from .util import Util
|
|
15
|
+
from .logtail_pipeline_config_detail import LogtailPipelineConfigDetail
|
|
16
|
+
|
|
17
|
+
__all__ = ['CreateLogtailPipelineConfigResponse', 'DeleteLogtailPipelineConfigResponse',
|
|
18
|
+
'GetLogtailPipelineConfigResponse', 'UpdateLogtailPipelineConfigResponse',
|
|
19
|
+
'ListLogtailPipelineConfigResponse']
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class CreateLogtailPipelineConfigResponse(LogResponse):
|
|
23
|
+
"""The response of the create_logtail_pipeline_config API from log.
|
|
24
|
+
|
|
25
|
+
:type header: dict
|
|
26
|
+
:param header: CreateLogtailPipelineConfigResponse HTTP response header
|
|
27
|
+
"""
|
|
28
|
+
|
|
29
|
+
def __init__(self, header, resp=''):
|
|
30
|
+
LogResponse.__init__(self, header, resp)
|
|
31
|
+
|
|
32
|
+
def log_print(self):
|
|
33
|
+
print('CreateLogtailPipelineConfigResponse:')
|
|
34
|
+
print('headers:', self.get_all_headers())
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
class DeleteLogtailPipelineConfigResponse(LogResponse):
|
|
38
|
+
"""The response of the delete_logtail_pipeline_config API from log.
|
|
39
|
+
|
|
40
|
+
:type header: dict
|
|
41
|
+
:param header: DeleteLogtailPipelineConfigResponse HTTP response header
|
|
42
|
+
"""
|
|
43
|
+
|
|
44
|
+
def __init__(self, header, resp=''):
|
|
45
|
+
LogResponse.__init__(self, header, resp)
|
|
46
|
+
|
|
47
|
+
def log_print(self):
|
|
48
|
+
print('DeleteLogtailPipelineConfigResponse:')
|
|
49
|
+
print('headers:', self.get_all_headers())
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class GetLogtailPipelineConfigResponse(LogResponse):
|
|
53
|
+
"""The response of the get_logtail_pipeline_config API from log.
|
|
54
|
+
|
|
55
|
+
:type header: dict
|
|
56
|
+
:param header: GetLogtailPipelineConfigResponse HTTP response header
|
|
57
|
+
|
|
58
|
+
:type resp: dict
|
|
59
|
+
:param resp: the HTTP response body
|
|
60
|
+
"""
|
|
61
|
+
|
|
62
|
+
def __init__(self, resp, header):
|
|
63
|
+
LogResponse.__init__(self, header, resp)
|
|
64
|
+
self.pipeline_config = LogtailPipelineConfigDetail.from_json(resp)
|
|
65
|
+
|
|
66
|
+
def get_pipeline_config(self):
|
|
67
|
+
"""Get the pipeline config detail
|
|
68
|
+
|
|
69
|
+
:return: LogtailPipelineConfigDetail object
|
|
70
|
+
"""
|
|
71
|
+
return self.pipeline_config
|
|
72
|
+
|
|
73
|
+
def log_print(self):
|
|
74
|
+
print('GetLogtailPipelineConfigResponse:')
|
|
75
|
+
print('headers:', self.get_all_headers())
|
|
76
|
+
print('pipeline_config:', self.pipeline_config.to_json())
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
class UpdateLogtailPipelineConfigResponse(LogResponse):
|
|
80
|
+
"""The response of the update_logtail_pipeline_config API from log.
|
|
81
|
+
|
|
82
|
+
:type header: dict
|
|
83
|
+
:param header: UpdateLogtailPipelineConfigResponse HTTP response header
|
|
84
|
+
"""
|
|
85
|
+
|
|
86
|
+
def __init__(self, header, resp=''):
|
|
87
|
+
LogResponse.__init__(self, header, resp)
|
|
88
|
+
|
|
89
|
+
def log_print(self):
|
|
90
|
+
print('UpdateLogtailPipelineConfigResponse:')
|
|
91
|
+
print('headers:', self.get_all_headers())
|
|
92
|
+
|
|
93
|
+
|
|
94
|
+
class ListLogtailPipelineConfigResponse(LogResponse):
|
|
95
|
+
"""The response of the list_logtail_pipeline_config API from log.
|
|
96
|
+
|
|
97
|
+
:type header: dict
|
|
98
|
+
:param header: ListLogtailPipelineConfigResponse HTTP response header
|
|
99
|
+
|
|
100
|
+
:type resp: dict
|
|
101
|
+
:param resp: the HTTP response body
|
|
102
|
+
"""
|
|
103
|
+
|
|
104
|
+
def __init__(self, resp, header):
|
|
105
|
+
LogResponse.__init__(self, header, resp)
|
|
106
|
+
self.count = int(resp.get("count", 0))
|
|
107
|
+
self.total = int(resp.get("total", 0))
|
|
108
|
+
self.configs = Util.convert_unicode_to_str(resp.get("configs", []))
|
|
109
|
+
|
|
110
|
+
def get_configs(self):
|
|
111
|
+
"""Get the list of pipeline config names
|
|
112
|
+
|
|
113
|
+
:return: list of config names
|
|
114
|
+
"""
|
|
115
|
+
return self.configs
|
|
116
|
+
|
|
117
|
+
def get_count(self):
|
|
118
|
+
"""Get the count of configs in current response
|
|
119
|
+
|
|
120
|
+
:return: int
|
|
121
|
+
"""
|
|
122
|
+
return self.count
|
|
123
|
+
|
|
124
|
+
def get_total(self):
|
|
125
|
+
"""Get the total count of configs
|
|
126
|
+
|
|
127
|
+
:return: int
|
|
128
|
+
"""
|
|
129
|
+
return self.total
|
|
130
|
+
|
|
131
|
+
def log_print(self):
|
|
132
|
+
print('ListLogtailPipelineConfigResponse:')
|
|
133
|
+
print('headers:', self.get_all_headers())
|
|
134
|
+
print('count:', str(self.count))
|
|
135
|
+
print('total:', str(self.total))
|
|
136
|
+
print('configs:', str(self.configs))
|
|
137
|
+
|
|
138
|
+
def merge(self, response):
|
|
139
|
+
"""Merge another response into current response
|
|
140
|
+
|
|
141
|
+
:type response: ListLogtailPipelineConfigResponse
|
|
142
|
+
:param response: another response to merge
|
|
143
|
+
|
|
144
|
+
:return: self
|
|
145
|
+
"""
|
|
146
|
+
if not isinstance(response, ListLogtailPipelineConfigResponse):
|
|
147
|
+
raise ValueError(
|
|
148
|
+
"passed response is not a ListLogtailPipelineConfigResponse: " + str(type(response)))
|
|
149
|
+
|
|
150
|
+
self.count += response.get_count()
|
|
151
|
+
self.total = response.get_total() # use the latest total count
|
|
152
|
+
self.configs.extend(response.get_configs())
|
|
153
|
+
|
|
154
|
+
# update body
|
|
155
|
+
self.body = {
|
|
156
|
+
'count': self.count,
|
|
157
|
+
'total': self.total,
|
|
158
|
+
'configs': self.configs
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
return self
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: aliyun-log-python-sdk
|
|
3
|
-
Version: 0.9.
|
|
3
|
+
Version: 0.9.35
|
|
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
|
|
@@ -29,6 +29,14 @@ Requires-Dist: pytest; extra == "test"
|
|
|
29
29
|
Requires-Dist: lz4; extra == "test"
|
|
30
30
|
Requires-Dist: virtualenv; extra == "test"
|
|
31
31
|
Requires-Dist: zstandard; extra == "test"
|
|
32
|
+
Dynamic: author
|
|
33
|
+
Dynamic: classifier
|
|
34
|
+
Dynamic: description
|
|
35
|
+
Dynamic: home-page
|
|
36
|
+
Dynamic: license-file
|
|
37
|
+
Dynamic: provides-extra
|
|
38
|
+
Dynamic: requires-dist
|
|
39
|
+
Dynamic: summary
|
|
32
40
|
|
|
33
41
|
|
|
34
42
|
Python SDK for Alicloud Log Service
|
|
@@ -54,6 +54,8 @@ aliyun/log/logresponse.py
|
|
|
54
54
|
aliyun/log/logstore_config_response.py
|
|
55
55
|
aliyun/log/logtail_config_detail.py
|
|
56
56
|
aliyun/log/logtail_config_response.py
|
|
57
|
+
aliyun/log/logtail_pipeline_config_detail.py
|
|
58
|
+
aliyun/log/logtail_pipeline_config_response.py
|
|
57
59
|
aliyun/log/machine_group_detail.py
|
|
58
60
|
aliyun/log/machinegroup_response.py
|
|
59
61
|
aliyun/log/metering_mode_response.py
|
|
@@ -140,4 +142,5 @@ aliyun_log_python_sdk.egg-info/dependency_links.txt
|
|
|
140
142
|
aliyun_log_python_sdk.egg-info/requires.txt
|
|
141
143
|
aliyun_log_python_sdk.egg-info/top_level.txt
|
|
142
144
|
tests/test_alert.py
|
|
145
|
+
tests/test_logtail_pipeline_config.py
|
|
143
146
|
tests/test_util.py
|