volcengine-python-sdk 4.0.20__py2.py3-none-any.whl → 4.0.22__py2.py3-none-any.whl
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.
Potentially problematic release.
This version of volcengine-python-sdk might be problematic. Click here for more details.
- volcengine_python_sdk-4.0.22.dist-info/METADATA +214 -0
- {volcengine_python_sdk-4.0.20.dist-info → volcengine_python_sdk-4.0.22.dist-info}/RECORD +561 -163
- {volcengine_python_sdk-4.0.20.dist-info → volcengine_python_sdk-4.0.22.dist-info}/WHEEL +1 -1
- {volcengine_python_sdk-4.0.20.dist-info → volcengine_python_sdk-4.0.22.dist-info}/top_level.txt +1 -0
- volcenginesdkarkruntime/_utils/_key_agreement.py +23 -0
- volcenginesdkarkruntime/resources/chat/completions.py +13 -3
- volcenginesdkarkruntime/resources/images/images.py +1 -1
- volcenginesdkarkruntime/resources/responses/input_items.py +2 -2
- volcenginesdkarkruntime/resources/responses/responses.py +9 -2
- volcenginesdkarkruntime/types/images/images.py +3 -0
- volcenginesdkcloudmonitor/__init__.py +309 -0
- volcenginesdkcloudmonitor/api/__init__.py +6 -0
- volcenginesdkcloudmonitor/api/cloudmonitor_api.py +6048 -0
- volcenginesdkcloudmonitor/models/__init__.py +305 -0
- volcenginesdkcloudmonitor/models/alert_notification_for_list_preset_alert_templates_output.py +305 -0
- volcenginesdkcloudmonitor/models/applied_rule_for_list_alert_templates_output.py +201 -0
- volcenginesdkcloudmonitor/models/applied_rule_for_list_preset_alert_templates_output.py +149 -0
- volcenginesdkcloudmonitor/models/apply_object_for_apply_object_groups_by_alert_template_input.py +331 -0
- volcenginesdkcloudmonitor/models/apply_object_groups_by_alert_template_request.py +177 -0
- volcenginesdkcloudmonitor/models/apply_object_groups_by_alert_template_response.py +123 -0
- volcenginesdkcloudmonitor/models/condition_for_create_alert_template_input.py +227 -0
- volcenginesdkcloudmonitor/models/condition_for_create_rule_input.py +253 -0
- volcenginesdkcloudmonitor/models/condition_for_list_alert_templates_output.py +227 -0
- volcenginesdkcloudmonitor/models/condition_for_list_preset_alert_templates_output.py +227 -0
- volcenginesdkcloudmonitor/models/condition_for_list_rules_by_ids_output.py +279 -0
- volcenginesdkcloudmonitor/models/condition_for_list_rules_output.py +279 -0
- volcenginesdkcloudmonitor/models/condition_for_update_alert_template_input.py +227 -0
- volcenginesdkcloudmonitor/models/condition_for_update_rule_input.py +253 -0
- volcenginesdkcloudmonitor/models/contact_for_list_contact_group_by_ids_output.py +201 -0
- volcenginesdkcloudmonitor/models/contact_for_list_contact_groups_output.py +201 -0
- volcenginesdkcloudmonitor/models/contact_group_for_list_contacts_output.py +253 -0
- volcenginesdkcloudmonitor/models/convert_tag_for_create_rule_input.py +149 -0
- volcenginesdkcloudmonitor/models/convert_tag_for_list_rules_by_ids_output.py +149 -0
- volcenginesdkcloudmonitor/models/convert_tag_for_list_rules_output.py +149 -0
- volcenginesdkcloudmonitor/models/convert_tag_for_update_rule_input.py +149 -0
- volcenginesdkcloudmonitor/models/create_alert_template_request.py +282 -0
- volcenginesdkcloudmonitor/models/create_alert_template_response.py +123 -0
- volcenginesdkcloudmonitor/models/create_contact_group_request.py +176 -0
- volcenginesdkcloudmonitor/models/create_contact_group_response.py +123 -0
- volcenginesdkcloudmonitor/models/create_contacts_request.py +177 -0
- volcenginesdkcloudmonitor/models/create_contacts_response.py +123 -0
- volcenginesdkcloudmonitor/models/create_event_rule_request.py +537 -0
- volcenginesdkcloudmonitor/models/create_event_rule_response.py +123 -0
- volcenginesdkcloudmonitor/models/create_notification_request.py +204 -0
- volcenginesdkcloudmonitor/models/create_notification_response.py +123 -0
- volcenginesdkcloudmonitor/models/create_notify_template_request.py +277 -0
- volcenginesdkcloudmonitor/models/create_notify_template_response.py +123 -0
- volcenginesdkcloudmonitor/models/create_object_group_request.py +150 -0
- volcenginesdkcloudmonitor/models/create_object_group_response.py +123 -0
- volcenginesdkcloudmonitor/models/create_rule_request.py +850 -0
- volcenginesdkcloudmonitor/models/create_rule_response.py +123 -0
- volcenginesdkcloudmonitor/models/create_silence_policy_request.py +256 -0
- volcenginesdkcloudmonitor/models/create_silence_policy_response.py +123 -0
- volcenginesdkcloudmonitor/models/create_webhook_request.py +191 -0
- volcenginesdkcloudmonitor/models/create_webhook_response.py +123 -0
- volcenginesdkcloudmonitor/models/data_for_create_event_rule_output.py +123 -0
- volcenginesdkcloudmonitor/models/data_for_delete_event_rule_output.py +123 -0
- volcenginesdkcloudmonitor/models/data_for_disable_event_rule_output.py +123 -0
- volcenginesdkcloudmonitor/models/data_for_enable_event_rule_output.py +123 -0
- volcenginesdkcloudmonitor/models/data_for_get_metric_data_output.py +331 -0
- volcenginesdkcloudmonitor/models/data_for_get_top_data_output.py +175 -0
- volcenginesdkcloudmonitor/models/data_for_list_alert_group_output.py +513 -0
- volcenginesdkcloudmonitor/models/data_for_list_alert_templates_output.py +409 -0
- volcenginesdkcloudmonitor/models/data_for_list_contact_group_by_ids_output.py +279 -0
- volcenginesdkcloudmonitor/models/data_for_list_contact_groups_output.py +279 -0
- volcenginesdkcloudmonitor/models/data_for_list_contacts_by_ids_output.py +201 -0
- volcenginesdkcloudmonitor/models/data_for_list_contacts_output.py +227 -0
- volcenginesdkcloudmonitor/models/data_for_list_default_notify_templates_output.py +227 -0
- volcenginesdkcloudmonitor/models/data_for_list_event_rules_output.py +669 -0
- volcenginesdkcloudmonitor/models/data_for_list_events_output.py +279 -0
- volcenginesdkcloudmonitor/models/data_for_list_notifications_output.py +305 -0
- volcenginesdkcloudmonitor/models/data_for_list_notify_templates_output.py +331 -0
- volcenginesdkcloudmonitor/models/data_for_list_object_groups_output.py +305 -0
- volcenginesdkcloudmonitor/models/data_for_list_preset_alert_templates_output.py +435 -0
- volcenginesdkcloudmonitor/models/data_for_list_rules_by_ids_output.py +929 -0
- volcenginesdkcloudmonitor/models/data_for_list_rules_output.py +929 -0
- volcenginesdkcloudmonitor/models/data_for_list_send_alert_output.py +253 -0
- volcenginesdkcloudmonitor/models/data_for_list_silence_policy_output.py +409 -0
- volcenginesdkcloudmonitor/models/data_for_list_webhooks_by_ids_output.py +305 -0
- volcenginesdkcloudmonitor/models/data_for_list_webhooks_output.py +305 -0
- volcenginesdkcloudmonitor/models/data_for_tag_resources_output.py +149 -0
- volcenginesdkcloudmonitor/models/data_for_update_event_rule_output.py +123 -0
- volcenginesdkcloudmonitor/models/data_point_for_get_metric_data_output.py +149 -0
- volcenginesdkcloudmonitor/models/delete_alert_templates_by_ids_request.py +123 -0
- volcenginesdkcloudmonitor/models/delete_alert_templates_by_ids_response.py +123 -0
- volcenginesdkcloudmonitor/models/delete_contact_group_by_ids_request.py +123 -0
- volcenginesdkcloudmonitor/models/delete_contact_group_by_ids_response.py +123 -0
- volcenginesdkcloudmonitor/models/delete_contacts_by_ids_request.py +123 -0
- volcenginesdkcloudmonitor/models/delete_contacts_by_ids_response.py +123 -0
- volcenginesdkcloudmonitor/models/delete_event_rule_request.py +123 -0
- volcenginesdkcloudmonitor/models/delete_event_rule_response.py +123 -0
- volcenginesdkcloudmonitor/models/delete_notifications_by_ids_request.py +123 -0
- volcenginesdkcloudmonitor/models/delete_notifications_by_ids_response.py +123 -0
- volcenginesdkcloudmonitor/models/delete_notify_templates_by_ids_request.py +123 -0
- volcenginesdkcloudmonitor/models/delete_notify_templates_by_ids_response.py +123 -0
- volcenginesdkcloudmonitor/models/delete_object_group_request.py +124 -0
- volcenginesdkcloudmonitor/models/delete_object_group_response.py +123 -0
- volcenginesdkcloudmonitor/models/delete_rules_by_ids_request.py +123 -0
- volcenginesdkcloudmonitor/models/delete_rules_by_ids_response.py +123 -0
- volcenginesdkcloudmonitor/models/delete_silence_policy_by_ids_request.py +123 -0
- volcenginesdkcloudmonitor/models/delete_silence_policy_by_ids_response.py +123 -0
- volcenginesdkcloudmonitor/models/delete_webhooks_by_ids_request.py +123 -0
- volcenginesdkcloudmonitor/models/delete_webhooks_by_ids_response.py +123 -0
- volcenginesdkcloudmonitor/models/dimension_conditions_for_create_object_group_input.py +201 -0
- volcenginesdkcloudmonitor/models/dimension_conditions_for_create_rule_input.py +201 -0
- volcenginesdkcloudmonitor/models/dimension_conditions_for_list_rules_by_ids_output.py +201 -0
- volcenginesdkcloudmonitor/models/dimension_conditions_for_list_rules_output.py +201 -0
- volcenginesdkcloudmonitor/models/dimension_conditions_for_update_object_group_input.py +201 -0
- volcenginesdkcloudmonitor/models/dimension_conditions_for_update_rule_input.py +201 -0
- volcenginesdkcloudmonitor/models/dimension_for_get_metric_data_input.py +149 -0
- volcenginesdkcloudmonitor/models/dimension_for_get_metric_data_output.py +149 -0
- volcenginesdkcloudmonitor/models/dimension_for_get_top_data_input.py +149 -0
- volcenginesdkcloudmonitor/models/disable_event_rule_request.py +123 -0
- volcenginesdkcloudmonitor/models/disable_event_rule_response.py +123 -0
- volcenginesdkcloudmonitor/models/disable_preset_alert_template_request.py +124 -0
- volcenginesdkcloudmonitor/models/disable_preset_alert_template_response.py +123 -0
- volcenginesdkcloudmonitor/models/effect_time_for_create_silence_policy_input.py +149 -0
- volcenginesdkcloudmonitor/models/effect_time_for_list_silence_policy_output.py +149 -0
- volcenginesdkcloudmonitor/models/effect_time_for_update_silence_policy_input.py +149 -0
- volcenginesdkcloudmonitor/models/effective_time_for_create_event_rule_input.py +149 -0
- volcenginesdkcloudmonitor/models/effective_time_for_update_event_rule_input.py +149 -0
- volcenginesdkcloudmonitor/models/enable_event_rule_request.py +123 -0
- volcenginesdkcloudmonitor/models/enable_event_rule_response.py +123 -0
- volcenginesdkcloudmonitor/models/enable_preset_alert_template_request.py +387 -0
- volcenginesdkcloudmonitor/models/enable_preset_alert_template_response.py +123 -0
- volcenginesdkcloudmonitor/models/get_metric_data_request.py +308 -0
- volcenginesdkcloudmonitor/models/get_metric_data_response.py +123 -0
- volcenginesdkcloudmonitor/models/get_top_data_request.py +357 -0
- volcenginesdkcloudmonitor/models/get_top_data_response.py +123 -0
- volcenginesdkcloudmonitor/models/instance_for_get_metric_data_input.py +123 -0
- volcenginesdkcloudmonitor/models/instance_for_get_top_data_input.py +123 -0
- volcenginesdkcloudmonitor/models/level_condition_for_create_alert_template_input.py +156 -0
- volcenginesdkcloudmonitor/models/level_condition_for_create_rule_input.py +149 -0
- volcenginesdkcloudmonitor/models/level_condition_for_list_alert_templates_output.py +149 -0
- volcenginesdkcloudmonitor/models/level_condition_for_list_preset_alert_templates_output.py +149 -0
- volcenginesdkcloudmonitor/models/level_condition_for_list_rules_by_ids_output.py +149 -0
- volcenginesdkcloudmonitor/models/level_condition_for_list_rules_output.py +149 -0
- volcenginesdkcloudmonitor/models/level_condition_for_update_alert_template_input.py +156 -0
- volcenginesdkcloudmonitor/models/level_condition_for_update_rule_input.py +149 -0
- volcenginesdkcloudmonitor/models/list_alert_group_request.py +357 -0
- volcenginesdkcloudmonitor/models/list_alert_group_response.py +253 -0
- volcenginesdkcloudmonitor/models/list_alert_templates_request.py +253 -0
- volcenginesdkcloudmonitor/models/list_alert_templates_response.py +201 -0
- volcenginesdkcloudmonitor/models/list_contact_group_by_ids_request.py +123 -0
- volcenginesdkcloudmonitor/models/list_contact_group_by_ids_response.py +123 -0
- volcenginesdkcloudmonitor/models/list_contact_groups_request.py +175 -0
- volcenginesdkcloudmonitor/models/list_contact_groups_response.py +201 -0
- volcenginesdkcloudmonitor/models/list_contacts_by_ids_request.py +123 -0
- volcenginesdkcloudmonitor/models/list_contacts_by_ids_response.py +123 -0
- volcenginesdktransitrouter/models/describe_transit_router_grant_rules_request.py → volcenginesdkcloudmonitor/models/list_contacts_request.py +69 -44
- volcenginesdkcloudmonitor/models/list_contacts_response.py +201 -0
- volcenginesdkcloudmonitor/models/list_default_notify_templates_request.py +198 -0
- volcenginesdkcloudmonitor/models/list_default_notify_templates_response.py +123 -0
- volcenginesdkcloudmonitor/models/list_event_rules_request.py +279 -0
- volcenginesdkcloudmonitor/models/list_event_rules_response.py +253 -0
- volcenginesdkcloudmonitor/models/list_events_request.py +364 -0
- volcenginesdkcloudmonitor/models/list_events_response.py +253 -0
- volcenginesdkcloudmonitor/models/list_notifications_request.py +261 -0
- volcenginesdkcloudmonitor/models/list_notifications_response.py +201 -0
- volcenginesdkcloudmonitor/models/list_notify_templates_request.py +275 -0
- volcenginesdkcloudmonitor/models/list_notify_templates_response.py +201 -0
- volcenginesdkcloudmonitor/models/list_object_groups_request.py +227 -0
- volcenginesdktransitrouter/models/describe_transit_router_grant_rules_response.py → volcenginesdkcloudmonitor/models/list_object_groups_response.py +47 -47
- volcenginesdkcloudmonitor/models/list_preset_alert_templates_request.py +227 -0
- volcenginesdkcloudmonitor/models/list_preset_alert_templates_response.py +201 -0
- volcenginesdkcloudmonitor/models/list_rules_by_ids_request.py +123 -0
- volcenginesdkcloudmonitor/models/list_rules_by_ids_response.py +123 -0
- volcenginesdkcloudmonitor/models/list_rules_request.py +357 -0
- volcenginesdkcloudmonitor/models/list_rules_response.py +201 -0
- volcenginesdkcloudmonitor/models/list_send_alert_request.py +176 -0
- volcenginesdkcloudmonitor/models/list_send_alert_response.py +201 -0
- volcenginesdkcloudmonitor/models/list_silence_policy_request.py +305 -0
- volcenginesdkcloudmonitor/models/list_silence_policy_response.py +201 -0
- volcenginesdkcloudmonitor/models/list_webhooks_by_ids_request.py +123 -0
- volcenginesdkcloudmonitor/models/list_webhooks_by_ids_response.py +123 -0
- volcenginesdkcloudmonitor/models/list_webhooks_request.py +331 -0
- volcenginesdkcloudmonitor/models/list_webhooks_response.py +253 -0
- volcenginesdkcloudmonitor/models/message_queue_for_create_event_rule_input.py +331 -0
- volcenginesdkcloudmonitor/models/message_queue_for_list_event_rules_output.py +227 -0
- volcenginesdkcloudmonitor/models/message_queue_for_update_event_rule_input.py +331 -0
- volcenginesdkcloudmonitor/models/meta_condition_for_create_object_group_input.py +175 -0
- volcenginesdkcloudmonitor/models/meta_condition_for_create_rule_input.py +175 -0
- volcenginesdkcloudmonitor/models/meta_condition_for_create_silence_policy_input.py +149 -0
- volcenginesdkcloudmonitor/models/meta_condition_for_list_rules_by_ids_output.py +175 -0
- volcenginesdkcloudmonitor/models/meta_condition_for_list_rules_output.py +175 -0
- volcenginesdkcloudmonitor/models/meta_condition_for_list_silence_policy_output.py +149 -0
- volcenginesdkcloudmonitor/models/meta_condition_for_update_object_group_input.py +175 -0
- volcenginesdkcloudmonitor/models/meta_condition_for_update_rule_input.py +175 -0
- volcenginesdkcloudmonitor/models/meta_condition_for_update_silence_policy_input.py +149 -0
- volcenginesdkcloudmonitor/models/meta_for_create_object_group_input.py +175 -0
- volcenginesdkcloudmonitor/models/meta_for_create_rule_input.py +175 -0
- volcenginesdkcloudmonitor/models/meta_for_create_silence_policy_input.py +175 -0
- volcenginesdkcloudmonitor/models/meta_for_list_rules_by_ids_output.py +175 -0
- volcenginesdkcloudmonitor/models/meta_for_list_rules_output.py +175 -0
- volcenginesdktransitrouter/models/delete_transit_router_grant_rule_request.py → volcenginesdkcloudmonitor/models/meta_for_list_silence_policy_output.py +61 -37
- volcenginesdkcloudmonitor/models/meta_for_update_object_group_input.py +175 -0
- volcenginesdkcloudmonitor/models/meta_for_update_rule_input.py +175 -0
- volcenginesdkcloudmonitor/models/meta_for_update_silence_policy_input.py +175 -0
- volcenginesdkcloudmonitor/models/metric_data_result_for_get_metric_data_output.py +175 -0
- volcenginesdkcloudmonitor/models/modify_state_of_silence_policy_by_ids_request.py +157 -0
- volcenginesdkcloudmonitor/models/modify_state_of_silence_policy_by_ids_response.py +123 -0
- volcenginesdkcloudmonitor/models/no_data_for_create_alert_template_input.py +175 -0
- volcenginesdkcloudmonitor/models/no_data_for_create_rule_input.py +149 -0
- volcenginesdkcloudmonitor/models/no_data_for_list_alert_templates_output.py +175 -0
- volcenginesdkcloudmonitor/models/no_data_for_list_preset_alert_templates_output.py +175 -0
- volcenginesdkcloudmonitor/models/no_data_for_update_alert_template_input.py +175 -0
- volcenginesdkcloudmonitor/models/no_data_for_update_rule_input.py +149 -0
- volcenginesdkcloudmonitor/models/notification_for_create_notification_input.py +242 -0
- volcenginesdkcloudmonitor/models/notification_for_list_notifications_output.py +227 -0
- volcenginesdkcloudmonitor/models/notification_for_update_notification_input.py +242 -0
- volcenginesdkcloudmonitor/models/notify_template_for_apply_object_groups_by_alert_template_input.py +156 -0
- volcenginesdkcloudmonitor/models/notify_template_for_create_event_rule_input.py +156 -0
- volcenginesdkcloudmonitor/models/notify_template_for_create_notification_input.py +156 -0
- volcenginesdkcloudmonitor/models/notify_template_for_create_rule_input.py +156 -0
- volcenginesdkcloudmonitor/models/notify_template_for_enable_preset_alert_template_input.py +156 -0
- volcenginesdkcloudmonitor/models/notify_template_for_list_alert_templates_output.py +149 -0
- volcenginesdkcloudmonitor/models/notify_template_for_list_event_rules_output.py +149 -0
- volcenginesdkcloudmonitor/models/notify_template_for_list_notifications_output.py +149 -0
- volcenginesdkcloudmonitor/models/notify_template_for_list_preset_alert_templates_output.py +149 -0
- volcenginesdkcloudmonitor/models/notify_template_for_list_rules_by_ids_output.py +149 -0
- volcenginesdkcloudmonitor/models/notify_template_for_list_rules_output.py +149 -0
- volcenginesdkcloudmonitor/models/notify_template_for_update_event_rule_input.py +156 -0
- volcenginesdkcloudmonitor/models/notify_template_for_update_notification_input.py +156 -0
- volcenginesdkcloudmonitor/models/notify_template_for_update_rule_input.py +156 -0
- volcenginesdkcloudmonitor/models/object_for_create_object_group_input.py +227 -0
- volcenginesdkcloudmonitor/models/object_for_list_object_groups_output.py +279 -0
- volcenginesdkcloudmonitor/models/object_for_update_object_group_input.py +227 -0
- volcenginesdkcloudmonitor/models/object_group_for_list_alert_templates_output.py +357 -0
- volcenginesdkcloudmonitor/models/project_condition_for_create_object_group_input.py +123 -0
- volcenginesdkcloudmonitor/models/project_condition_for_create_rule_input.py +123 -0
- volcenginesdkcloudmonitor/models/project_condition_for_list_rules_by_ids_output.py +123 -0
- volcenginesdkcloudmonitor/models/project_condition_for_list_rules_output.py +123 -0
- volcenginesdkcloudmonitor/models/project_condition_for_update_object_group_input.py +123 -0
- volcenginesdkcloudmonitor/models/project_condition_for_update_rule_input.py +123 -0
- volcenginesdkcloudmonitor/models/range_for_create_silence_policy_input.py +201 -0
- volcenginesdkcloudmonitor/models/range_for_list_silence_policy_output.py +201 -0
- volcenginesdkcloudmonitor/models/range_for_update_silence_policy_input.py +201 -0
- volcenginesdkcloudmonitor/models/recovery_notify_for_create_alert_template_input.py +123 -0
- volcenginesdkcloudmonitor/models/recovery_notify_for_create_rule_input.py +123 -0
- volcenginesdkcloudmonitor/models/recovery_notify_for_list_alert_templates_output.py +123 -0
- volcenginesdkcloudmonitor/models/recovery_notify_for_list_preset_alert_templates_output.py +123 -0
- volcenginesdkcloudmonitor/models/recovery_notify_for_list_rules_by_ids_output.py +123 -0
- volcenginesdkcloudmonitor/models/recovery_notify_for_list_rules_output.py +123 -0
- volcenginesdkcloudmonitor/models/recovery_notify_for_update_alert_template_input.py +123 -0
- volcenginesdkcloudmonitor/models/recovery_notify_for_update_rule_input.py +123 -0
- volcenginesdkcloudmonitor/models/rule_for_list_object_groups_output.py +201 -0
- volcenginesdkcloudmonitor/models/send_result_for_list_send_alert_output.py +227 -0
- volcenginesdkcloudmonitor/models/set_state_of_rules_by_ids_request.py +157 -0
- volcenginesdkcloudmonitor/models/set_state_of_rules_by_ids_response.py +123 -0
- volcenginesdkcloudmonitor/models/silence_conditions_for_create_silence_policy_input.py +175 -0
- volcenginesdkcloudmonitor/models/silence_conditions_for_list_silence_policy_output.py +201 -0
- volcenginesdkcloudmonitor/models/silence_conditions_for_update_silence_policy_input.py +175 -0
- volcenginesdkcloudmonitor/models/tag_condition_for_create_object_group_input.py +149 -0
- volcenginesdkcloudmonitor/models/tag_condition_for_create_rule_input.py +149 -0
- volcenginesdkcloudmonitor/models/tag_condition_for_list_rules_by_ids_output.py +149 -0
- volcenginesdkcloudmonitor/models/tag_condition_for_list_rules_output.py +149 -0
- volcenginesdkcloudmonitor/models/tag_condition_for_update_object_group_input.py +149 -0
- volcenginesdkcloudmonitor/models/tag_condition_for_update_rule_input.py +149 -0
- volcenginesdkcloudmonitor/models/tag_for_create_object_group_input.py +175 -0
- volcenginesdkcloudmonitor/models/tag_for_create_rule_input.py +175 -0
- volcenginesdkcloudmonitor/models/tag_for_list_rules_by_ids_output.py +175 -0
- volcenginesdkcloudmonitor/models/tag_for_list_rules_output.py +175 -0
- volcenginesdkcloudmonitor/models/tag_for_tag_resources_input.py +149 -0
- volcenginesdkcloudmonitor/models/tag_for_update_object_group_input.py +175 -0
- volcenginesdkcloudmonitor/models/tag_for_update_rule_input.py +175 -0
- volcenginesdkcloudmonitor/models/tag_resources_request.py +176 -0
- volcenginesdkcloudmonitor/models/tag_resources_response.py +123 -0
- volcenginesdkcloudmonitor/models/template_detail_for_list_object_groups_output.py +149 -0
- volcenginesdkcloudmonitor/models/template_rule_for_create_alert_template_input.py +279 -0
- volcenginesdkcloudmonitor/models/template_rule_for_list_alert_templates_output.py +331 -0
- volcenginesdkcloudmonitor/models/template_rule_for_list_preset_alert_templates_output.py +331 -0
- volcenginesdkcloudmonitor/models/template_rule_for_update_alert_template_input.py +279 -0
- volcenginesdkcloudmonitor/models/tls_target_for_create_event_rule_input.py +227 -0
- volcenginesdkcloudmonitor/models/tls_target_for_list_event_rules_output.py +227 -0
- volcenginesdkcloudmonitor/models/tls_target_for_update_event_rule_input.py +227 -0
- volcenginesdkcloudmonitor/models/top_data_result_for_get_top_data_output.py +149 -0
- volcenginesdkcloudmonitor/models/untag_resources_request.py +176 -0
- volcenginesdktransitrouter/models/modify_transit_router_grant_rule_attributes_response.py → volcenginesdkcloudmonitor/models/untag_resources_response.py +35 -7
- volcenginesdkcloudmonitor/models/update_alert_template_request.py +309 -0
- volcenginesdkcloudmonitor/models/update_alert_template_response.py +123 -0
- volcenginesdktransitrouter/models/create_transit_router_grant_rule_request.py → volcenginesdkcloudmonitor/models/update_contact_group_request.py +40 -41
- volcenginesdkcloudmonitor/models/update_contact_group_response.py +123 -0
- volcenginesdkcloudmonitor/models/update_contact_group_with_contacts_request.py +150 -0
- volcenginesdkcloudmonitor/models/update_contact_group_with_contacts_response.py +123 -0
- volcenginesdkcloudmonitor/models/update_contacts_request.py +204 -0
- volcenginesdkcloudmonitor/models/update_contacts_response.py +123 -0
- volcenginesdkcloudmonitor/models/update_contacts_with_contact_groups_request.py +150 -0
- volcenginesdkcloudmonitor/models/update_contacts_with_contact_groups_response.py +123 -0
- volcenginesdkcloudmonitor/models/update_event_rule_request.py +564 -0
- volcenginesdkcloudmonitor/models/update_event_rule_response.py +123 -0
- volcenginesdkcloudmonitor/models/update_notification_request.py +231 -0
- volcenginesdkcloudmonitor/models/update_notification_response.py +123 -0
- volcenginesdkcloudmonitor/models/update_notify_template_request.py +304 -0
- volcenginesdkcloudmonitor/models/update_notify_template_response.py +123 -0
- volcenginesdkcloudmonitor/models/update_object_group_request.py +177 -0
- volcenginesdkcloudmonitor/models/update_object_group_response.py +123 -0
- volcenginesdkcloudmonitor/models/update_rule_request.py +851 -0
- volcenginesdkcloudmonitor/models/update_rule_response.py +123 -0
- volcenginesdkcloudmonitor/models/update_silence_policy_request.py +283 -0
- volcenginesdkcloudmonitor/models/update_silence_policy_response.py +123 -0
- volcenginesdkcloudmonitor/models/update_webhook_request.py +205 -0
- volcenginesdkcloudmonitor/models/update_webhook_response.py +123 -0
- volcenginesdkcore/api_client.py +74 -7
- volcenginesdkcore/auth/__init__.py +1 -1
- volcenginesdkcore/auth/providers/__init__.py +2 -0
- volcenginesdkcore/auth/providers/provider.py +4 -0
- volcenginesdkcore/auth/providers/sts_oidc_provider.py +96 -0
- volcenginesdkcore/auth/providers/sts_provider.py +9 -4
- volcenginesdkcore/auth/providers/sts_saml_provider.py +100 -0
- volcenginesdkcore/configuration.py +17 -4
- volcenginesdkcore/endpoint/providers/default_provider.py +59 -4
- volcenginesdkcore/interceptor/interceptors/request.py +1 -0
- volcenginesdkcore/interceptor/interceptors/sign_request_interceptor.py +7 -0
- volcenginesdkcore/observability/__init__.py +0 -0
- volcenginesdkcore/observability/debugger.py +235 -0
- volcenginesdkcore/rest.py +67 -1
- volcenginesdkcore/retryer/retry_condition.py +8 -3
- volcenginesdkcore/signv4.py +8 -0
- volcenginesdkecs/__init__.py +12 -0
- volcenginesdkecs/api/ecs_api.py +291 -0
- volcenginesdkecs/models/__init__.py +12 -0
- volcenginesdkecs/models/create_hpc_cluster_request.py +53 -1
- volcenginesdkecs/models/describe_hpc_clusters_request.py +53 -1
- volcenginesdkecs/models/describe_system_event_default_action_request.py +124 -0
- volcenginesdkecs/models/describe_system_event_default_action_response.py +175 -0
- volcenginesdkrdsmysqlv2/models/modify_db_instance_auto_upgrade_minor_version_response.py → volcenginesdkecs/models/extra_info_for_describe_system_event_default_action_output.py +6 -6
- volcenginesdkecs/models/hpc_cluster_for_describe_hpc_clusters_output.py +53 -1
- volcenginesdkecs/models/instance_for_describe_instances_output.py +27 -1
- volcenginesdkecs/models/modify_system_event_default_action_request.py +210 -0
- volcenginesdkecs/models/modify_system_event_default_action_response.py +149 -0
- volcenginesdkecs/models/rdma_network_interface_detail_for_describe_instances_output.py +227 -0
- volcenginesdkecs/models/related_system_event_for_describe_system_event_default_action_output.py +383 -0
- volcenginesdkecs/models/report_instances_status_request.py +280 -0
- volcenginesdktransitrouter/models/reject_shared_transit_router_response.py → volcenginesdkecs/models/report_instances_status_response.py +6 -6
- volcenginesdkecs/models/tag_filter_for_describe_hpc_clusters_input.py +149 -0
- volcenginesdkecs/models/tag_for_create_hpc_cluster_input.py +149 -0
- volcenginesdkecs/models/tag_for_describe_hpc_clusters_output.py +149 -0
- volcenginesdkprivatezone/__init__.py +1 -1
- volcenginesdkprivatezone/models/__init__.py +1 -1
- volcenginesdkprivatezone/models/{ip_configs_for_update_resolver_endpoint_input.py → ip_config_for_update_resolver_endpoint_input.py} +21 -21
- volcenginesdkprivatezone/models/update_resolver_endpoint_request.py +3 -3
- volcenginesdkrdsmysqlv2/__init__.py +39 -25
- volcenginesdkrdsmysqlv2/api/rds_mysql_v2_api.py +1347 -1153
- volcenginesdkrdsmysqlv2/models/__init__.py +39 -25
- volcenginesdkrdsmysqlv2/models/address_for_describe_db_instance_endpoints_output.py +305 -0
- volcenginesdkrdsmysqlv2/models/allow_list_for_describe_allow_lists_output.py +27 -1
- volcenginesdkrdsmysqlv2/models/basic_info_for_describe_db_instance_detail_output.py +1 -105
- volcenginesdkrdsmysqlv2/models/change_object_for_sync_allow_list_output.py +331 -0
- volcenginesdkrdsmysqlv2/models/charge_detail_for_describe_db_instance_charge_detail_output.py +383 -0
- volcenginesdkrdsmysqlv2/models/create_db_endpoint_request.py +27 -1
- volcenginesdkrdsmysqlv2/models/create_db_instance_request.py +27 -1
- volcenginesdkrdsmysqlv2/models/create_dr_db_instance_request.py +27 -1
- volcenginesdkrdsmysqlv2/models/db_instance_attribute_for_describe_db_instance_attribute_output.py +825 -0
- volcenginesdkrdsmysqlv2/models/describe_allow_lists_request.py +29 -3
- volcenginesdkrdsmysqlv2/models/describe_backup_policy_response.py +53 -1
- volcenginesdkrdsmysqlv2/models/describe_db_disaster_recovery_instances_request.py +124 -0
- volcenginesdkrdsmysqlv2/models/describe_db_disaster_recovery_instances_response.py +305 -0
- volcenginesdkrdsmysqlv2/models/{describe_db_auto_scaling_config_request.py → describe_db_instance_attribute_request.py} +9 -9
- volcenginesdkrdsmysqlv2/models/describe_db_instance_attribute_response.py +123 -0
- volcenginesdktransitrouter/models/accept_shared_transit_router_request.py → volcenginesdkrdsmysqlv2/models/describe_db_instance_charge_detail_request.py +22 -22
- volcenginesdkrdsmysqlv2/models/describe_db_instance_charge_detail_response.py +123 -0
- volcenginesdkrdsmysqlv2/models/describe_db_instance_endpoints_request.py +124 -0
- volcenginesdkrdsmysqlv2/models/describe_db_instance_endpoints_response.py +123 -0
- volcenginesdkrdsmysqlv2/models/describe_db_instance_ha_config_request.py +124 -0
- volcenginesdkrdsmysqlv2/models/describe_db_instance_ha_config_response.py +149 -0
- volcenginesdkrdsmysqlv2/models/describe_db_instance_price_detail_response.py +29 -3
- volcenginesdkrdsmysqlv2/models/describe_db_instance_tde_request.py +124 -0
- volcenginesdkrdsmysqlv2/models/describe_db_instance_tde_response.py +123 -0
- volcenginesdkrdsmysqlv2/models/describe_db_proxy_price_detail_response.py +27 -1
- volcenginesdkrdsmysqlv2/models/describe_db_proxy_request.py +124 -0
- volcenginesdkrdsmysqlv2/models/describe_db_proxy_response.py +123 -0
- volcenginesdkrdsmysqlv2/models/describe_resource_usage_request.py +124 -0
- volcenginesdkrdsmysqlv2/models/describe_resource_usage_response.py +565 -0
- volcenginesdkrdsmysqlv2/models/disaster_recovery_instance_for_describe_db_disaster_recovery_instances_output.py +279 -0
- volcenginesdkrdsmysqlv2/models/endpoint_for_describe_db_instance_detail_output.py +27 -1
- volcenginesdkrdsmysqlv2/models/endpoint_for_describe_db_instance_endpoints_output.py +669 -0
- volcenginesdkrdsmysqlv2/models/maintenance_window_for_describe_db_instance_attribute_output.py +175 -0
- volcenginesdkrdsmysqlv2/models/modify_backup_policy_request.py +53 -1
- volcenginesdkrdsmysqlv2/models/modify_backup_policy_response.py +53 -1
- volcenginesdkrdsmysqlv2/models/modify_db_endpoint_request.py +53 -1
- volcenginesdkrdsmysqlv2/models/modify_db_instance_tde_request.py +281 -0
- volcenginesdkrdsmysqlv2/models/{modify_db_auto_scaling_config_response.py → modify_db_instance_tde_response.py} +5 -5
- volcenginesdkrdsmysqlv2/models/{upgrade_db_instance_kernel_version_request.py → modify_db_instance_type_request.py} +55 -29
- volcenginesdkrdsmysqlv2/models/{restore_to_cross_region_instance_response.py → modify_db_instance_type_response.py} +13 -13
- volcenginesdkrdsmysqlv2/models/node_for_describe_db_instance_ha_config_output.py +435 -0
- volcenginesdkrdsmysqlv2/models/{node_info_for_restore_to_cross_region_instance_input.py → node_info_for_modify_db_instance_type_input.py} +25 -25
- volcenginesdkrdsmysqlv2/models/proxy_detail_for_describe_db_proxy_output.py +149 -0
- volcenginesdkrdsmysqlv2/models/proxy_node_custom_for_create_db_instance_input.py +123 -0
- volcenginesdkrdsmysqlv2/models/proxy_node_custom_for_create_dr_db_instance_input.py +123 -0
- volcenginesdkrdsmysqlv2/models/proxy_node_custom_for_rebuild_db_instance_input.py +123 -0
- volcenginesdkrdsmysqlv2/models/proxy_node_custom_for_restore_to_new_instance_input.py +123 -0
- volcenginesdkrdsmysqlv2/models/proxy_resource_info_for_describe_db_proxy_output.py +175 -0
- volcenginesdkrdsmysqlv2/models/read_only_node_weight_for_describe_db_instance_endpoints_output.py +175 -0
- volcenginesdkrdsmysqlv2/models/rebuild_db_instance_request.py +27 -1
- volcenginesdkrdsmysqlv2/models/restore_to_new_instance_request.py +27 -1
- volcenginesdkrdsmysqlv2/models/sync_allow_list_request.py +150 -0
- volcenginesdkrdsmysqlv2/models/sync_allow_list_response.py +123 -0
- volcenginesdkrdsmysqlv2/models/{instance_tag_for_restore_to_cross_region_instance_input.py → tag_for_describe_db_instance_attribute_output.py} +13 -13
- volcenginesdkresourceshare/__init__.py +12 -0
- volcenginesdkresourceshare/api/resource_share_api.py +291 -0
- volcenginesdkresourceshare/models/__init__.py +12 -0
- volcenginesdkresourceshare/models/create_resource_share_request.py +29 -3
- volcenginesdkresourceshare/models/create_resource_share_response.py +29 -1
- volcenginesdkresourceshare/models/describe_resource_shares_request.py +31 -6
- volcenginesdkresourceshare/models/list_tags_for_resources_request.py +228 -0
- volcenginesdkresourceshare/models/list_tags_for_resources_response.py +175 -0
- volcenginesdkresourceshare/models/resource_share_for_describe_resource_shares_output.py +27 -1
- volcenginesdkresourceshare/models/resource_tag_for_list_tags_for_resources_output.py +201 -0
- volcenginesdkresourceshare/models/tag_filter_for_describe_resource_shares_input.py +149 -0
- volcenginesdkresourceshare/models/tag_filter_for_list_tags_for_resources_input.py +149 -0
- volcenginesdkresourceshare/models/tag_for_create_resource_share_input.py +149 -0
- volcenginesdkresourceshare/models/tag_for_describe_resource_shares_output.py +149 -0
- volcenginesdkresourceshare/models/tag_for_tag_resources_input.py +151 -0
- volcenginesdkresourceshare/models/tag_resources_request.py +176 -0
- volcenginesdktransitrouter/models/accept_shared_transit_router_response.py → volcenginesdkresourceshare/models/tag_resources_response.py +6 -6
- volcenginesdkresourceshare/models/untag_resources_request.py +176 -0
- volcenginesdkresourceshare/models/untag_resources_response.py +95 -0
- volcenginesdktag/models/get_tag_keys_request.py +60 -1
- volcenginesdktag/models/get_tag_values_request.py +62 -3
- volcenginesdktag/models/get_tags_request.py +34 -1
- volcenginesdktransitrouter/__init__.py +1 -13
- volcenginesdktransitrouter/api/transitrouter_api.py +0 -582
- volcenginesdktransitrouter/models/__init__.py +1 -13
- volcenginesdktransitrouter/models/create_transit_router_vpc_attachment_request.py +27 -1
- volcenginesdktransitrouter/models/describe_transit_router_flow_logs_response.py +79 -1
- volcenginesdktransitrouter/models/describe_transit_router_multicast_groups_response.py +79 -1
- volcenginesdktransitrouter/models/describe_transit_router_route_entries_request.py +27 -1
- volcenginesdktransitrouter/models/describe_transit_router_route_entries_response.py +3 -55
- volcenginesdktransitrouter/models/models.py +1960 -1935
- volcenginesdktransitrouter/models/modify_transit_router_vpc_attachment_attributes_request.py +27 -1
- volcenginesdktransitrouter/models/modify_transit_router_vpn_attachment_attributes_request.py +27 -1
- volcenginesdktransitrouter/models/{reject_shared_transit_router_request.py → tag_for_describe_transit_router_flow_logs_output.py} +46 -21
- volcenginesdktransitrouter/models/transit_router_attachment_for_describe_transit_router_peer_attachments_output.py +3 -3
- volcenginesdktransitrouter/models/transit_router_attachment_for_describe_transit_router_vpc_attachments_output.py +53 -1
- volcenginesdktransitrouter/models/transit_router_attachment_for_describe_transit_router_vpn_attachments_output.py +30 -4
- volcenginesdktransitrouter/models/transit_router_flow_log_for_describe_transit_router_flow_logs_output.py +27 -1
- volcenginesdktransitrouter/models/transit_router_for_describe_transit_routers_output.py +27 -1
- volcenginesdktransitrouter/models/transit_router_route_entry_for_describe_transit_router_route_entries_output.py +53 -1
- volcenginesdkvedbm/__init__.py +54 -0
- volcenginesdkvedbm/api/vedbm_api.py +2193 -253
- volcenginesdkvedbm/models/__init__.py +54 -0
- volcenginesdkvedbm/models/authorized_allow_list_for_describe_instance_allow_lists_output.py +279 -0
- volcenginesdkvedbm/models/cancel_schedule_events_request.py +149 -0
- volcenginesdkvedbm/models/cancel_schedule_events_response.py +95 -0
- volcenginesdkvedbm/models/change_master_request.py +151 -0
- volcenginesdkvedbm/models/change_master_response.py +95 -0
- volcenginesdkvedbm/models/charge_item_price_for_describe_db_instance_price_detail_output.py +227 -0
- volcenginesdkvedbm/models/charge_item_price_for_describe_exist_db_instance_price_output.py +227 -0
- volcenginesdkvedbm/models/charge_item_price_for_describe_storage_payable_price_output.py +227 -0
- volcenginesdkvedbm/models/config_item_price_for_describe_db_instance_price_detail_output.py +331 -0
- volcenginesdkvedbm/models/config_item_price_for_describe_exist_db_instance_price_output.py +331 -0
- volcenginesdkvedbm/models/create_db_instance_request.py +1 -1
- volcenginesdkvedbm/models/describe_availability_zones_request.py +123 -0
- volcenginesdkvedbm/models/describe_availability_zones_response.py +149 -0
- volcenginesdkvedbm/models/describe_db_instance_parameter_change_history_request.py +256 -0
- volcenginesdkvedbm/models/describe_db_instance_parameter_change_history_response.py +149 -0
- volcenginesdkvedbm/models/describe_db_instance_price_detail_request.py +328 -0
- volcenginesdkvedbm/models/describe_db_instance_price_detail_response.py +279 -0
- volcenginesdkvedbm/models/describe_db_instance_specs_request.py +95 -0
- volcenginesdkrdsmysqlv2/models/describe_cross_region_backup_db_instances_response.py → volcenginesdkvedbm/models/describe_db_instance_specs_response.py +27 -27
- volcenginesdkrdsmysqlv2/models/describe_cross_backup_policy_request.py → volcenginesdkvedbm/models/describe_db_instance_version_request.py +10 -10
- volcenginesdkvedbm/models/describe_db_instance_version_response.py +175 -0
- volcenginesdkvedbm/models/describe_exist_db_instance_price_request.py +248 -0
- volcenginesdkvedbm/models/describe_exist_db_instance_price_response.py +279 -0
- volcenginesdkvedbm/models/describe_instance_allow_lists_request.py +124 -0
- volcenginesdkvedbm/models/describe_instance_allow_lists_response.py +149 -0
- volcenginesdkvedbm/models/describe_modifiable_parameters_request.py +199 -0
- volcenginesdkvedbm/models/describe_modifiable_parameters_response.py +123 -0
- volcenginesdkvedbm/models/describe_regions_request.py +95 -0
- volcenginesdkrdsmysqlv2/models/describe_available_cross_region_response.py → volcenginesdkvedbm/models/describe_regions_response.py +13 -13
- volcenginesdkvedbm/models/describe_schedule_events_request.py +347 -0
- volcenginesdkvedbm/models/describe_schedule_events_response.py +149 -0
- volcenginesdkvedbm/models/describe_storage_payable_price_request.py +131 -0
- volcenginesdkvedbm/models/describe_storage_payable_price_response.py +123 -0
- volcenginesdkvedbm/models/instance_for_describe_exist_db_instance_price_input.py +208 -0
- volcenginesdkvedbm/models/modify_allow_list_request.py +1 -1
- volcenginesdkvedbm/models/modify_db_endpoint_address_request.py +237 -0
- volcenginesdktransitrouter/models/delete_transit_router_grant_rule_response.py → volcenginesdkvedbm/models/modify_db_endpoint_address_response.py +6 -6
- volcenginesdkvedbm/models/modify_db_endpoint_dns_request.py +95 -0
- volcenginesdkvedbm/models/modify_db_endpoint_dns_response.py +95 -0
- volcenginesdkvedbm/models/modify_db_instance_charge_type_request.py +295 -0
- volcenginesdkrdsmysqlv2/models/describe_available_cross_region_request.py → volcenginesdkvedbm/models/modify_db_instance_charge_type_response.py +25 -26
- volcenginesdkrdsmysqlv2/models/modify_db_instance_auto_upgrade_minor_version_request.py → volcenginesdkvedbm/models/modify_db_instance_deletion_protection_policy_request.py +34 -27
- volcenginesdkvedbm/models/modify_db_instance_deletion_protection_policy_response.py +95 -0
- volcenginesdkrdsmysqlv2/models/modify_db_auto_scaling_config_request.py → volcenginesdkvedbm/models/modify_db_instance_maintenance_window_request.py +28 -27
- volcenginesdkrdsmysqlv2/models/upgrade_db_instance_kernel_version_response.py → volcenginesdkvedbm/models/modify_db_instance_maintenance_window_response.py +6 -6
- volcenginesdkvedbm/models/modify_db_node_config_request.py +176 -0
- volcenginesdkvedbm/models/modify_db_node_config_response.py +95 -0
- volcenginesdkvedbm/models/modify_schedule_events_request.py +182 -0
- volcenginesdkvedbm/models/modify_schedule_events_response.py +95 -0
- volcenginesdkvedbm/models/node_for_describe_db_instance_detail_output.py +27 -1
- volcenginesdkvedbm/models/node_for_describe_db_instances_output.py +27 -1
- volcenginesdkvedbm/models/node_spec_for_describe_db_instance_specs_output.py +305 -0
- volcenginesdkvedbm/models/node_spec_for_describe_exist_db_instance_price_input.py +182 -0
- volcenginesdkvedbm/models/parameter_change_history_for_describe_db_instance_parameter_change_history_output.py +227 -0
- volcenginesdkvedbm/models/parameter_for_describe_modifiable_parameters_output.py +357 -0
- volcenginesdkvedbm/models/region_for_describe_regions_output.py +149 -0
- volcenginesdkvedbm/models/restart_db_instance_request.py +29 -3
- volcenginesdkvedbm/models/restore_to_new_instance_request.py +1 -1
- volcenginesdkvedbm/models/schedule_tasks_info_for_describe_schedule_events_output.py +435 -0
- volcenginesdktransitrouter/models/modify_transit_router_grant_rule_attributes_request.py → volcenginesdkvedbm/models/zone_for_describe_availability_zones_output.py +39 -41
- volcenginesdkvod20250101/__init__.py +18 -0
- volcenginesdkvod20250101/api/vod20250101_api.py +194 -0
- volcenginesdkvod20250101/models/__init__.py +18 -0
- volcenginesdkvod20250101/models/bilingual_subtitle_for_get_ai_translation_project_output.py +253 -0
- volcenginesdkvod20250101/models/clip_audio_for_create_ai_translation_utterance_output.py +253 -0
- volcenginesdkvod20250101/models/clip_video_for_create_ai_translation_utterance_output.py +253 -0
- volcenginesdkvod20250101/models/convert_highlight_cuts_for_get_execution_output.py +149 -0
- volcenginesdkvod20250101/models/convert_highlight_for_get_execution_output.py +27 -1
- volcenginesdkvod20250101/models/create_ai_translation_utterance_request.py +232 -0
- volcenginesdkvod20250101/models/create_ai_translation_utterance_response.py +201 -0
- volcenginesdkvod20250101/models/highlight_cuts_for_get_execution_output.py +201 -0
- volcenginesdkvod20250101/models/highlight_cuts_for_start_execution_input.py +201 -0
- volcenginesdkvod20250101/models/highlight_for_get_execution_output.py +53 -1
- volcenginesdkvod20250101/models/highlight_for_start_execution_input.py +53 -1
- volcenginesdkvod20250101/models/opening_hook_for_get_execution_output.py +227 -0
- volcenginesdkvod20250101/models/opening_hook_for_start_execution_input.py +227 -0
- volcenginesdkvod20250101/models/project_info_for_get_ai_translation_project_output.py +27 -1
- volcenginesdkvod20250101/models/remove_ai_translation_utterance_request.py +178 -0
- volcenginesdktransitrouter/models/create_transit_router_grant_rule_response.py → volcenginesdkvod20250101/models/remove_ai_translation_utterance_response.py +6 -6
- volcenginesdkvod20250101/models/source_clip_for_create_ai_translation_utterance_output.py +279 -0
- volcenginesdkvod20250101/models/source_utterance_for_create_ai_translation_utterance_output.py +357 -0
- volcenginesdkvod20250101/models/storyboard_for_get_execution_output.py +253 -0
- volcenginesdkvod20250101/models/subtitle_recognition_config_for_get_ai_translation_project_output.py +81 -3
- volcenginesdkvod20250101/models/subtitle_recognition_config_for_list_ai_translation_project_output.py +81 -3
- volcenginesdkvod20250101/models/subtitle_recognition_config_for_submit_ai_translation_workflow_input.py +81 -3
- volcenginesdkvod20250101/models/target_clip_for_create_ai_translation_utterance_output.py +279 -0
- volcenginesdkvod20250101/models/target_utterance_for_create_ai_translation_utterance_output.py +357 -0
- volcenginesdkvod20250101/models/trim_for_create_ai_translation_utterance_output.py +149 -0
- volcenginesdkvod20250101/models/update_ai_translation_utterances_request.py +27 -1
- volcenginesdkvod20250101/models/vision_for_get_execution_output.py +53 -1
- volcenginesdkvod20250101/models/vision_for_start_execution_input.py +53 -1
- volcenginesdkvpn/__init__.py +4 -0
- volcenginesdkvpn/models/__init__.py +4 -0
- volcenginesdkvpn/models/bgp_config_for_modify_vpn_connection_tunnel_attributes_input.py +149 -0
- volcenginesdkvpn/models/bgp_info_for_describe_vpn_connection_attributes_output.py +3 -3
- volcenginesdkvpn/models/bgp_info_for_describe_vpn_connections_output.py +3 -3
- volcenginesdkvpn/models/convert_bgp_config_for_create_vpn_connection_input.py +149 -0
- volcenginesdkvpn/models/convert_bgp_config_for_modify_vpn_connection_attributes_input.py +149 -0
- volcenginesdkvpn/models/create_customer_gateway_request.py +34 -1
- volcenginesdkvpn/models/create_ssl_vpn_server_request.py +34 -1
- volcenginesdkvpn/models/create_vpn_connection_request.py +27 -1
- volcenginesdkvpn/models/create_vpn_gateway_request.py +53 -1
- volcenginesdkvpn/models/customer_gateway_for_describe_customer_gateways_output.py +27 -1
- volcenginesdkvpn/models/describe_customer_gateways_request.py +27 -1
- volcenginesdkvpn/models/describe_vpn_connection_attributes_response.py +27 -1
- volcenginesdkvpn/models/describe_vpn_gateway_attributes_response.py +53 -1
- volcenginesdkvpn/models/describe_vpn_gateways_request.py +79 -1
- volcenginesdkvpn/models/modify_ssl_vpn_server_request.py +34 -1
- volcenginesdkvpn/models/modify_vpn_connection_attributes_request.py +53 -1
- volcenginesdkvpn/models/modify_vpn_connection_tunnel_attributes_request.py +27 -1
- volcenginesdkvpn/models/ssl_vpn_server_for_describe_ssl_vpn_servers_output.py +27 -1
- volcenginesdkvpn/models/tunnel_bgp_info_for_describe_vpn_connection_attributes_output.py +279 -0
- volcenginesdkvpn/models/tunnel_option_for_create_vpn_connection_input.py +27 -1
- volcenginesdkvpn/models/tunnel_option_for_describe_vpn_connection_attributes_output.py +27 -1
- volcenginesdkvpn/models/tunnel_option_for_describe_vpn_connections_output.py +27 -1
- volcenginesdkvpn/models/tunnel_option_for_modify_vpn_connection_attributes_input.py +27 -1
- volcenginesdkvpn/models/vpn_gateway_for_describe_vpn_gateways_billing_output.py +53 -1
- volcenginesdkvpn/models/vpn_gateway_for_describe_vpn_gateways_output.py +53 -1
- volcengine_python_sdk-4.0.20.dist-info/METADATA +0 -20
- volcenginesdkrdsmysqlv2/models/auto_storage_scaling_config_for_restore_to_cross_region_instance_input.py +0 -175
- volcenginesdkrdsmysqlv2/models/charge_info_for_restore_to_cross_region_instance_input.py +0 -227
- volcenginesdkrdsmysqlv2/models/data_for_describe_cross_region_backup_db_instances_output.py +0 -357
- volcenginesdkrdsmysqlv2/models/describe_cross_backup_policy_response.py +0 -227
- volcenginesdkrdsmysqlv2/models/describe_cross_region_backup_db_instances_request.py +0 -279
- volcenginesdkrdsmysqlv2/models/describe_db_auto_scaling_config_response.py +0 -227
- volcenginesdkrdsmysqlv2/models/modify_cross_backup_policy_request.py +0 -228
- volcenginesdkrdsmysqlv2/models/modify_cross_backup_policy_response.py +0 -227
- volcenginesdkrdsmysqlv2/models/restore_to_cross_region_instance_request.py +0 -597
- volcenginesdkrdsmysqlv2/models/storage_config_for_describe_db_auto_scaling_config_output.py +0 -175
- volcenginesdkrdsmysqlv2/models/storage_config_for_modify_db_auto_scaling_config_input.py +0 -175
- volcenginesdktransitrouter/models/transit_router_grant_rule_for_describe_transit_router_grant_rules_output.py +0 -253
- {volcengine_python_sdk-4.0.20.dist-info → volcengine_python_sdk-4.0.22.dist-info/licenses}/LICENSE.txt +0 -0
- {volcengine_python_sdk-4.0.20.dist-info → volcengine_python_sdk-4.0.22.dist-info/licenses}/NOTICE.md +0 -0
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import threading
|
|
2
|
+
import time
|
|
3
|
+
import uuid
|
|
4
|
+
from datetime import datetime
|
|
5
|
+
|
|
6
|
+
import dateutil.parser
|
|
7
|
+
|
|
8
|
+
from volcenginesdkcore import UniversalApi, UniversalInfo, ApiClient, Configuration
|
|
9
|
+
from .provider import Provider, CredentialValue
|
|
10
|
+
import json
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class AssumeRoleSamlCredentials:
|
|
14
|
+
def __init__(self, ak, sk, session_token, current_time, expired_time):
|
|
15
|
+
self.ak = ak
|
|
16
|
+
self.sk = sk
|
|
17
|
+
self.session_token = session_token
|
|
18
|
+
self.current_time = current_time
|
|
19
|
+
self.expired_time = expired_time
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class StsSamlCredentialProvider(Provider):
|
|
23
|
+
def __init__(self, role_name, account_id, provider_name, saml_resp, duration_seconds=3600, scheme='https',
|
|
24
|
+
host='sts.volcengineapi.com', region='cn-beijing', timeout=30, expired_buffer_seconds=60, policy=None):
|
|
25
|
+
# self.ak = ak
|
|
26
|
+
# self.sk = sk
|
|
27
|
+
self.role_name = role_name
|
|
28
|
+
self.account_id = account_id
|
|
29
|
+
self.provider_name = provider_name
|
|
30
|
+
self.saml_resp = saml_resp
|
|
31
|
+
|
|
32
|
+
self.timeout = timeout
|
|
33
|
+
self.duration_seconds = duration_seconds
|
|
34
|
+
|
|
35
|
+
self.host = host
|
|
36
|
+
self.region = region
|
|
37
|
+
self.scheme = scheme
|
|
38
|
+
self.policy = policy
|
|
39
|
+
self.expired_time = None
|
|
40
|
+
if expired_buffer_seconds > 600:
|
|
41
|
+
raise ValueError('expired_buffer_seconds must be less than or equal to 600')
|
|
42
|
+
self.expired_buffer_seconds = expired_buffer_seconds
|
|
43
|
+
|
|
44
|
+
self.credentials = None
|
|
45
|
+
|
|
46
|
+
self._lock = threading.Lock()
|
|
47
|
+
|
|
48
|
+
def retrieve(self):
|
|
49
|
+
return self.credentials
|
|
50
|
+
|
|
51
|
+
def is_expired(self):
|
|
52
|
+
return (self.credentials is None or
|
|
53
|
+
(self.expired_time and self.expired_time < time.time() + self.expired_buffer_seconds))
|
|
54
|
+
|
|
55
|
+
def refresh(self):
|
|
56
|
+
with self._lock:
|
|
57
|
+
if self.is_expired():
|
|
58
|
+
self._assume_role_saml()
|
|
59
|
+
|
|
60
|
+
def get_credentials(self):
|
|
61
|
+
self.refresh()
|
|
62
|
+
return self.credentials
|
|
63
|
+
|
|
64
|
+
def _assume_role_saml(self):
|
|
65
|
+
params = {
|
|
66
|
+
'DurationSeconds': self.duration_seconds,
|
|
67
|
+
'RoleSessionName': uuid.uuid4().hex,
|
|
68
|
+
'RoleTrn': 'trn:iam::' + self.account_id + ':role/' + self.role_name,
|
|
69
|
+
'SAMLProviderTrn': 'trn:iam::' + self.account_id + ':saml-provider/' + self.provider_name,
|
|
70
|
+
'SAMLResp': self.saml_resp,
|
|
71
|
+
}
|
|
72
|
+
if self.policy is not None:
|
|
73
|
+
params['Policy'] = self.policy
|
|
74
|
+
configuration = type.__call__(Configuration)
|
|
75
|
+
|
|
76
|
+
# configuration.ak = self.ak
|
|
77
|
+
# configuration.sk = self.sk
|
|
78
|
+
configuration.host = self.host
|
|
79
|
+
configuration.region = self.region
|
|
80
|
+
configuration.scheme = self.scheme
|
|
81
|
+
configuration.read_timeout = self.timeout
|
|
82
|
+
c = UniversalApi(ApiClient(configuration))
|
|
83
|
+
info = UniversalInfo(method='POST', service='sts', version='2018-01-01', action='AssumeRoleWithSAML',
|
|
84
|
+
content_type='application/x-www-form-urlencoded')
|
|
85
|
+
|
|
86
|
+
resp, status_code, resp_header = c.do_call_with_http_info(info=info, body=params)
|
|
87
|
+
if 'Credentials' not in resp:
|
|
88
|
+
raise RuntimeError('failed to retrieve credentials from sts' + str(resp_header))
|
|
89
|
+
resp_cred = resp['Credentials']
|
|
90
|
+
|
|
91
|
+
# Parse the ISO string
|
|
92
|
+
dt = dateutil.parser.parse(resp_cred['Expiration'])
|
|
93
|
+
|
|
94
|
+
# Convert to timestamp (seconds since epoch)
|
|
95
|
+
self.expired_time = (dt - datetime(1970, 1, 1, tzinfo=dateutil.tz.tzutc())).total_seconds()
|
|
96
|
+
|
|
97
|
+
self.credentials = CredentialValue(ak=resp_cred['AccessKeyId'],
|
|
98
|
+
sk=resp_cred['SecretAccessKey'],
|
|
99
|
+
session_token=resp_cred['SessionToken'],
|
|
100
|
+
provider_name='StsSamlCredentialProvider')
|
|
@@ -12,6 +12,7 @@ import six
|
|
|
12
12
|
from six.moves import http_client as httplib
|
|
13
13
|
|
|
14
14
|
from volcenginesdkcore.endpoint import DefaultEndpointProvider
|
|
15
|
+
from volcenginesdkcore.observability.debugger import sdk_core_logger
|
|
15
16
|
from volcenginesdkcore.retryer.retryer import DEFAULT_RETRYER
|
|
16
17
|
|
|
17
18
|
|
|
@@ -87,7 +88,7 @@ class Configuration(six.with_metaclass(TypeWithDefault, object)):
|
|
|
87
88
|
|
|
88
89
|
# Logging Settings
|
|
89
90
|
self.logger = {}
|
|
90
|
-
self.logger["package_logger"] =
|
|
91
|
+
self.logger["package_logger"] = sdk_core_logger
|
|
91
92
|
self.logger["urllib3_logger"] = logging.getLogger("urllib3")
|
|
92
93
|
# Log format
|
|
93
94
|
self.logger_format = '%(asctime)s %(levelname)s %(message)s'
|
|
@@ -137,6 +138,7 @@ class Configuration(six.with_metaclass(TypeWithDefault, object)):
|
|
|
137
138
|
self.client_side_validation = True
|
|
138
139
|
|
|
139
140
|
self.endpoint_provider = DefaultEndpointProvider()
|
|
141
|
+
self.credential_provider = None
|
|
140
142
|
|
|
141
143
|
self.auto_retry = True
|
|
142
144
|
self.__retryer = DEFAULT_RETRYER
|
|
@@ -208,14 +210,14 @@ class Configuration(six.with_metaclass(TypeWithDefault, object)):
|
|
|
208
210
|
for _, logger in six.iteritems(self.logger):
|
|
209
211
|
logger.setLevel(logging.DEBUG)
|
|
210
212
|
# turn on httplib debug
|
|
211
|
-
httplib.HTTPConnection.debuglevel = 1
|
|
213
|
+
#httplib.HTTPConnection.debuglevel = 1
|
|
212
214
|
else:
|
|
213
215
|
# if debug status is False, turn off debug logging,
|
|
214
216
|
# setting log level to default `logging.WARNING`
|
|
215
217
|
for _, logger in six.iteritems(self.logger):
|
|
216
218
|
logger.setLevel(logging.WARNING)
|
|
217
219
|
# turn off httplib debug
|
|
218
|
-
httplib.HTTPConnection.debuglevel = 0
|
|
220
|
+
#httplib.HTTPConnection.debuglevel = 0
|
|
219
221
|
|
|
220
222
|
@property
|
|
221
223
|
def logger_format(self):
|
|
@@ -239,6 +241,9 @@ class Configuration(six.with_metaclass(TypeWithDefault, object)):
|
|
|
239
241
|
"""
|
|
240
242
|
self.__logger_format = value
|
|
241
243
|
self.logger_formatter = logging.Formatter(self.__logger_format)
|
|
244
|
+
for _, lg in six.iteritems(self.logger):
|
|
245
|
+
for h in lg.handlers:
|
|
246
|
+
h.setFormatter(self.logger_formatter)
|
|
242
247
|
|
|
243
248
|
def get_api_key_with_prefix(self, identifier):
|
|
244
249
|
"""Gets API key (with prefix if set).
|
|
@@ -267,7 +272,7 @@ class Configuration(six.with_metaclass(TypeWithDefault, object)):
|
|
|
267
272
|
"OS: {env}\n" \
|
|
268
273
|
"Python Version: {pyversion}\n" \
|
|
269
274
|
"Version of the API: 0.1.0\n" \
|
|
270
|
-
"SDK Package Version: 4.0.
|
|
275
|
+
"SDK Package Version: 4.0.22".\
|
|
271
276
|
format(env=sys.platform, pyversion=sys.version)
|
|
272
277
|
|
|
273
278
|
@property
|
|
@@ -334,3 +339,11 @@ class Configuration(six.with_metaclass(TypeWithDefault, object)):
|
|
|
334
339
|
@property
|
|
335
340
|
def retryer(self):
|
|
336
341
|
return self.__retryer
|
|
342
|
+
|
|
343
|
+
@property
|
|
344
|
+
def log_level(self):
|
|
345
|
+
return sdk_core_logger.get_log_level()
|
|
346
|
+
|
|
347
|
+
@log_level.setter
|
|
348
|
+
def log_level(self, value):
|
|
349
|
+
sdk_core_logger.set_log_level(value)
|
|
@@ -3,6 +3,7 @@ import os
|
|
|
3
3
|
import warnings
|
|
4
4
|
|
|
5
5
|
from volcenginesdkcore.endpoint.endpoint_provider import EndpointProvider, ResolvedEndpoint
|
|
6
|
+
from volcenginesdkcore.observability.debugger import sdk_core_logger
|
|
6
7
|
|
|
7
8
|
open_prefix = 'open'
|
|
8
9
|
endpoint_suffix = '.volcengineapi.com'
|
|
@@ -29,14 +30,36 @@ class ServiceEndpointInfo:
|
|
|
29
30
|
return self.service.lower().replace('_', '-')
|
|
30
31
|
|
|
31
32
|
def get_endpoint_for(self, region, suffix=endpoint_suffix):
|
|
33
|
+
sdk_core_logger.debug_endpoint(
|
|
34
|
+
"get_endpoint_for start: service=%s, region=%s, suffix=%s",
|
|
35
|
+
self.service, region, suffix
|
|
36
|
+
)
|
|
32
37
|
if self.is_global:
|
|
33
38
|
if self.global_endpoint:
|
|
39
|
+
sdk_core_logger.debug_endpoint(
|
|
40
|
+
"use global endpoint: service=%s, endpoint=%s",
|
|
41
|
+
self.service, self.global_endpoint
|
|
42
|
+
)
|
|
34
43
|
return self.global_endpoint
|
|
35
|
-
|
|
44
|
+
|
|
45
|
+
endpoint = self.__standardize_domain_service_code + suffix
|
|
46
|
+
sdk_core_logger.debug_endpoint(
|
|
47
|
+
"build global endpoint from service code: %s", endpoint
|
|
48
|
+
)
|
|
49
|
+
return endpoint
|
|
36
50
|
if region in self.region_endpoint_map:
|
|
37
|
-
|
|
51
|
+
endpoint = self.region_endpoint_map[region]
|
|
52
|
+
sdk_core_logger.debug_endpoint(
|
|
53
|
+
"use region endpoint from map: service=%s, region=%s, endpoint=%s",
|
|
54
|
+
self.service, region, endpoint
|
|
55
|
+
)
|
|
56
|
+
return endpoint
|
|
38
57
|
|
|
39
|
-
|
|
58
|
+
endpoint = self.__standardize_domain_service_code + '.' + region + suffix
|
|
59
|
+
sdk_core_logger.debug_endpoint(
|
|
60
|
+
"build region endpoint by default rule: %s", endpoint
|
|
61
|
+
)
|
|
62
|
+
return endpoint
|
|
40
63
|
|
|
41
64
|
|
|
42
65
|
default_endpoint = {
|
|
@@ -483,9 +506,21 @@ class DefaultEndpointProvider(EndpointProvider):
|
|
|
483
506
|
self.custom_endpoints = custom_endpoints or {}
|
|
484
507
|
|
|
485
508
|
def get_default_endpoint(self, service, region, suffix=endpoint_suffix):
|
|
509
|
+
sdk_core_logger.debug_endpoint(
|
|
510
|
+
"get_default_endpoint: service=%s, region=%s, suffix=%s",
|
|
511
|
+
service, region, suffix
|
|
512
|
+
)
|
|
486
513
|
if service in default_endpoint:
|
|
487
514
|
e = default_endpoint[service]
|
|
488
|
-
|
|
515
|
+
endpoint = e.get_endpoint_for(region, suffix)
|
|
516
|
+
sdk_core_logger.debug_endpoint(
|
|
517
|
+
"resolved default endpoint: service=%s, endpoint=%s",
|
|
518
|
+
service, endpoint
|
|
519
|
+
)
|
|
520
|
+
return endpoint
|
|
521
|
+
sdk_core_logger.debug_endpoint(
|
|
522
|
+
"service not found in default_endpoint, use fallback=%s", fallback_endpoint
|
|
523
|
+
)
|
|
489
524
|
return fallback_endpoint
|
|
490
525
|
|
|
491
526
|
def __in_bootstrap_region_list(self, region, custom_bootstrap_region):
|
|
@@ -525,20 +560,36 @@ class DefaultEndpointProvider(EndpointProvider):
|
|
|
525
560
|
return use_dual_stack
|
|
526
561
|
|
|
527
562
|
def endpoint_for(self, service, region, custom_bootstrap_region=None, use_dual_stack=None, **kwargs):
|
|
563
|
+
sdk_core_logger.debug_endpoint(
|
|
564
|
+
"endpoint_for called: service=%s, region=%s, custom_bootstrap_region=%s, use_dual_stack=%s",
|
|
565
|
+
service, region, custom_bootstrap_region, use_dual_stack
|
|
566
|
+
)
|
|
528
567
|
if service in self.custom_endpoints:
|
|
529
568
|
conf = self.custom_endpoints[service]
|
|
530
569
|
host = conf.get_endpoint_for(region)
|
|
570
|
+
sdk_core_logger.debug_endpoint(
|
|
571
|
+
"use custom endpoint: service=%s, region=%s, host=%s",
|
|
572
|
+
service, region, host
|
|
573
|
+
)
|
|
531
574
|
return ResolvedEndpoint(host)
|
|
532
575
|
|
|
533
576
|
if custom_bootstrap_region is None:
|
|
534
577
|
custom_bootstrap_region = {}
|
|
535
578
|
|
|
536
579
|
if not self.__in_bootstrap_region_list(region, custom_bootstrap_region):
|
|
580
|
+
sdk_core_logger.debug_endpoint(
|
|
581
|
+
"region=%s not in bootstrap list, fallback=%s",
|
|
582
|
+
region, fallback_endpoint
|
|
583
|
+
)
|
|
537
584
|
return ResolvedEndpoint(fallback_endpoint)
|
|
538
585
|
|
|
539
586
|
suffix = dualstack_endpoint_suffix if self.__has_enabled_dualstack(use_dual_stack) else endpoint_suffix
|
|
540
587
|
host = self.get_default_endpoint(service=service, region=region, suffix=suffix)
|
|
541
588
|
|
|
589
|
+
sdk_core_logger.debug_endpoint(
|
|
590
|
+
"final resolved endpoint: service=%s, region=%s, host=%s",
|
|
591
|
+
service, region, host
|
|
592
|
+
)
|
|
542
593
|
return ResolvedEndpoint(host)
|
|
543
594
|
|
|
544
595
|
|
|
@@ -547,4 +598,8 @@ class HostEndpointProvider(EndpointProvider):
|
|
|
547
598
|
self.host = host
|
|
548
599
|
|
|
549
600
|
def endpoint_for(self, service, region, **kwargs):
|
|
601
|
+
sdk_core_logger.debug_endpoint(
|
|
602
|
+
"HostEndpointProvider.endpoint_for: service=%s, region=%s, host=%s",
|
|
603
|
+
service, region, self.host
|
|
604
|
+
)
|
|
550
605
|
return ResolvedEndpoint(self.host)
|
|
@@ -61,6 +61,7 @@ class Request(object):
|
|
|
61
61
|
# retryer setting, default use global configration if value not set
|
|
62
62
|
self.auto_retry = configuration.auto_retry
|
|
63
63
|
self.retryer = configuration.retryer
|
|
64
|
+
self.credential_provider = configuration.credential_provider
|
|
64
65
|
|
|
65
66
|
self.runtime_options = None
|
|
66
67
|
if hasattr(body, '_configuration') and isinstance(body._configuration, RuntimeOption):
|
|
@@ -10,6 +10,13 @@ class SignRequestInterceptor(RequestInterceptor):
|
|
|
10
10
|
return 'volcengine-sign-request-interceptor'
|
|
11
11
|
|
|
12
12
|
def intercept(self, context):
|
|
13
|
+
# 新增代码。处理assume_role和assume_role_oidc和assume_role_saml
|
|
14
|
+
if context.request.credential_provider is not None:
|
|
15
|
+
credentials = context.request.credential_provider.get_credentials() # 这会调用 _assume_role_oidc() 方法获取临时凭证
|
|
16
|
+
context.request.ak = credentials.ak
|
|
17
|
+
context.request.sk = credentials.sk
|
|
18
|
+
context.request.session_token = credentials.session_token
|
|
19
|
+
|
|
13
20
|
self.update_params_for_auth(host=context.request.host, path=context.request.true_path,
|
|
14
21
|
method=context.request.method,
|
|
15
22
|
headers=context.request.header_params,
|
|
File without changes
|
|
@@ -0,0 +1,235 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
from __future__ import print_function
|
|
4
|
+
|
|
5
|
+
import logging
|
|
6
|
+
|
|
7
|
+
# Try using Enum (which comes with Py3 / you can pip install enum34 for Py2)
|
|
8
|
+
try:
|
|
9
|
+
from enum import Enum
|
|
10
|
+
except Exception:
|
|
11
|
+
Enum = None
|
|
12
|
+
|
|
13
|
+
SDK_DEBUGGER_LOG_NAME = "com.volcengine.sdkcore"
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
if Enum is not None:
|
|
17
|
+
# ========== Implementation based on Enum (preferred) ==========
|
|
18
|
+
class LogLevel(Enum):
|
|
19
|
+
# Base bit (starting from low bit 0)
|
|
20
|
+
LOG_DEBUG_OFF = (0,)
|
|
21
|
+
LOG_DEBUG_WITH_REQUEST = (1,)
|
|
22
|
+
LOG_DEBUG_WITH_REQUEST_BODY = (2, 'LOG_DEBUG_WITH_REQUEST')
|
|
23
|
+
LOG_DEBUG_WITH_REQUEST_ID = (3, 'LOG_DEBUG_WITH_REQUEST')
|
|
24
|
+
LOG_DEBUG_WITH_RESPONSE = (4, 'LOG_DEBUG_WITH_REQUEST')
|
|
25
|
+
LOG_DEBUG_WITH_RESPONSE_BODY = (5, 'LOG_DEBUG_WITH_RESPONSE')
|
|
26
|
+
LOG_DEBUG_WITH_SIGNING = (6, 'LOG_DEBUG_WITH_REQUEST')
|
|
27
|
+
LOG_DEBUG_WITH_ENDPOINT = (7, 'LOG_DEBUG_WITH_REQUEST')
|
|
28
|
+
LOG_DEBUG_WITH_REQUEST_RETRIES = (8, 'LOG_DEBUG_WITH_REQUEST')
|
|
29
|
+
LOG_DEBUG_WITH_CONFIG = (9, 'LOG_DEBUG_WITH_REQUEST')
|
|
30
|
+
# Special: represents "include all debug items", mask will be assigned dynamically after class definition
|
|
31
|
+
LOG_DEBUG_ALL = (-1,)
|
|
32
|
+
|
|
33
|
+
def __init__(self, bit_index, *parents):
|
|
34
|
+
# Record bit index
|
|
35
|
+
object.__setattr__(self, 'bit_index', bit_index)
|
|
36
|
+
|
|
37
|
+
# Calculate mask; ALL uses -1 as a placeholder, assigned later
|
|
38
|
+
if bit_index >= 0:
|
|
39
|
+
m = 1 << bit_index
|
|
40
|
+
cls = type(self) # Key: do not directly use class name, compatible during enum construction
|
|
41
|
+
for p in parents:
|
|
42
|
+
parent = p if isinstance(p, cls) else cls[p]
|
|
43
|
+
m |= parent.mask
|
|
44
|
+
object.__setattr__(self, 'mask', m)
|
|
45
|
+
else:
|
|
46
|
+
object.__setattr__(self, 'mask', 0)
|
|
47
|
+
|
|
48
|
+
@classmethod
|
|
49
|
+
def combine(cls, *modes):
|
|
50
|
+
"""Combine multiple modes into flags"""
|
|
51
|
+
if not modes:
|
|
52
|
+
return cls.LOG_DEBUG_OFF.mask
|
|
53
|
+
f = 0
|
|
54
|
+
for m in modes:
|
|
55
|
+
f |= m.mask
|
|
56
|
+
return f
|
|
57
|
+
|
|
58
|
+
def matches(self, flags):
|
|
59
|
+
"""Check whether the current mode is contained in flags"""
|
|
60
|
+
return (flags & self.mask) == self.mask
|
|
61
|
+
|
|
62
|
+
# Calculate mask for LOG_DEBUG_ALL after class loading
|
|
63
|
+
_all = 0
|
|
64
|
+
for lv in LogLevel:
|
|
65
|
+
if lv not in (LogLevel.LOG_DEBUG_OFF, LogLevel.LOG_DEBUG_ALL):
|
|
66
|
+
_all |= lv.mask
|
|
67
|
+
object.__setattr__(LogLevel.LOG_DEBUG_ALL, 'mask', _all)
|
|
68
|
+
|
|
69
|
+
else:
|
|
70
|
+
# ========== Pure Python fallback implementation when Enum is not available ==========
|
|
71
|
+
class _Level(object):
|
|
72
|
+
__slots__ = ('name', 'bit_index', 'mask')
|
|
73
|
+
|
|
74
|
+
def __init__(self, name, bit_index, parents=None):
|
|
75
|
+
self.name = name
|
|
76
|
+
self.bit_index = bit_index
|
|
77
|
+
if bit_index >= 0:
|
|
78
|
+
m = 1 << bit_index
|
|
79
|
+
if parents:
|
|
80
|
+
for p in parents:
|
|
81
|
+
m |= p.mask
|
|
82
|
+
self.mask = m
|
|
83
|
+
else:
|
|
84
|
+
self.mask = 0 # Placeholder, ALL will be assigned later by OR-ing all masks
|
|
85
|
+
|
|
86
|
+
def matches(self, flags):
|
|
87
|
+
return (flags & self.mask) == self.mask
|
|
88
|
+
|
|
89
|
+
def __repr__(self):
|
|
90
|
+
return '<LogLevel {0} mask=0x{1:X}>'.format(self.name, self.mask)
|
|
91
|
+
|
|
92
|
+
class LogLevel(object):
|
|
93
|
+
"""Enum fallback container: provides the same constants and API as Enum"""
|
|
94
|
+
# Define base and parent levels first
|
|
95
|
+
LOG_DEBUG_OFF = _Level('LOG_DEBUG_OFF', 0)
|
|
96
|
+
LOG_DEBUG_WITH_REQUEST = _Level('LOG_DEBUG_WITH_REQUEST', 1)
|
|
97
|
+
|
|
98
|
+
LOG_DEBUG_WITH_RESPONSE = _Level('LOG_DEBUG_WITH_RESPONSE', 4, [LOG_DEBUG_WITH_REQUEST])
|
|
99
|
+
|
|
100
|
+
# Levels dependent on parents
|
|
101
|
+
LOG_DEBUG_WITH_REQUEST_BODY = _Level('LOG_DEBUG_WITH_REQUEST_BODY', 2, [LOG_DEBUG_WITH_REQUEST])
|
|
102
|
+
LOG_DEBUG_WITH_REQUEST_ID = _Level('LOG_DEBUG_WITH_REQUEST_ID', 3, [LOG_DEBUG_WITH_REQUEST])
|
|
103
|
+
LOG_DEBUG_WITH_RESPONSE_BODY = _Level('LOG_DEBUG_WITH_RESPONSE_BODY', 5, [LOG_DEBUG_WITH_RESPONSE])
|
|
104
|
+
LOG_DEBUG_WITH_SIGNING = _Level('LOG_DEBUG_WITH_SIGNING', 6, [LOG_DEBUG_WITH_REQUEST])
|
|
105
|
+
LOG_DEBUG_WITH_ENDPOINT = _Level('LOG_DEBUG_WITH_ENDPOINT', 7, [LOG_DEBUG_WITH_REQUEST])
|
|
106
|
+
LOG_DEBUG_WITH_REQUEST_RETRIES = _Level('LOG_DEBUG_WITH_REQUEST_RETRIES', 8, [LOG_DEBUG_WITH_REQUEST])
|
|
107
|
+
LOG_DEBUG_WITH_CONFIG = _Level('LOG_DEBUG_WITH_CONFIG', 9, [LOG_DEBUG_WITH_REQUEST])
|
|
108
|
+
|
|
109
|
+
LOG_DEBUG_ALL = _Level('LOG_DEBUG_ALL', -1) # Placeholder, will be OR-ed later
|
|
110
|
+
|
|
111
|
+
@classmethod
|
|
112
|
+
def _all_levels(cls):
|
|
113
|
+
# Used for internal aggregation
|
|
114
|
+
return [
|
|
115
|
+
cls.LOG_DEBUG_OFF,
|
|
116
|
+
cls.LOG_DEBUG_WITH_REQUEST,
|
|
117
|
+
cls.LOG_DEBUG_WITH_REQUEST_BODY,
|
|
118
|
+
cls.LOG_DEBUG_WITH_REQUEST_ID,
|
|
119
|
+
cls.LOG_DEBUG_WITH_RESPONSE,
|
|
120
|
+
cls.LOG_DEBUG_WITH_RESPONSE_BODY,
|
|
121
|
+
cls.LOG_DEBUG_WITH_SIGNING,
|
|
122
|
+
cls.LOG_DEBUG_WITH_ENDPOINT,
|
|
123
|
+
cls.LOG_DEBUG_WITH_REQUEST_RETRIES,
|
|
124
|
+
cls.LOG_DEBUG_WITH_CONFIG,
|
|
125
|
+
cls.LOG_DEBUG_ALL,
|
|
126
|
+
]
|
|
127
|
+
|
|
128
|
+
@classmethod
|
|
129
|
+
def combine(cls, *modes):
|
|
130
|
+
if not modes:
|
|
131
|
+
return cls.LOG_DEBUG_OFF.mask
|
|
132
|
+
f = 0
|
|
133
|
+
for m in modes:
|
|
134
|
+
f |= m.mask
|
|
135
|
+
return f
|
|
136
|
+
|
|
137
|
+
# Calculate mask for LOG_DEBUG_ALL
|
|
138
|
+
_all_mask = 0
|
|
139
|
+
for _lv in LogLevel._all_levels():
|
|
140
|
+
if _lv.name not in ('LOG_DEBUG_OFF', 'LOG_DEBUG_ALL'):
|
|
141
|
+
_all_mask |= _lv.mask
|
|
142
|
+
LogLevel.LOG_DEBUG_ALL.mask = _all_mask
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
class SdkCoreLogger(logging.Logger):
|
|
146
|
+
|
|
147
|
+
def __init__(self, name, debug=False, log_level=0):
|
|
148
|
+
# In Python 2.7, must explicitly call parent __init__
|
|
149
|
+
if debug:
|
|
150
|
+
logging.Logger.__init__(self, name, logging.DEBUG)
|
|
151
|
+
else:
|
|
152
|
+
logging.Logger.__init__(self, name, logging.WARNING)
|
|
153
|
+
self._log_level = int(log_level)
|
|
154
|
+
|
|
155
|
+
# ---- Custom bit control ----
|
|
156
|
+
def set_log_level(self, log_level):
|
|
157
|
+
self._log_level = int(log_level)
|
|
158
|
+
|
|
159
|
+
def get_log_level(self):
|
|
160
|
+
return self._log_level
|
|
161
|
+
|
|
162
|
+
def is_enabled_for_loglevel(self, level_enum):
|
|
163
|
+
# Does not change logging's native level semantics, only adds an extra bit filter
|
|
164
|
+
return level_enum.matches(self._log_level)
|
|
165
|
+
|
|
166
|
+
@staticmethod
|
|
167
|
+
def get_sdk_logger(name,
|
|
168
|
+
debug=False,
|
|
169
|
+
log_level=0,
|
|
170
|
+
fmt="%(asctime)s [%(threadName)s] %(levelname)s %(name)s:%(lineno)d - %(message)s",
|
|
171
|
+
datefmt="%Y-%m-%d %H:%M:%S"):
|
|
172
|
+
"""
|
|
173
|
+
Create an SdkLogger with Handler.
|
|
174
|
+
- base_level: standard logging minimum level
|
|
175
|
+
- log_flags: your custom LogLevel bitmask
|
|
176
|
+
"""
|
|
177
|
+
# No global pollution: only subclass used for the returned logger
|
|
178
|
+
# If you want to globally setLoggerClass, call logging.setLoggerClass(SdkLogger) at module init
|
|
179
|
+
logger = SdkCoreLogger(name, debug=debug, log_level=log_level)
|
|
180
|
+
|
|
181
|
+
if not logger.handlers:
|
|
182
|
+
h = logging.StreamHandler()
|
|
183
|
+
if debug:
|
|
184
|
+
h.setLevel(logging.DEBUG)
|
|
185
|
+
else:
|
|
186
|
+
h.setLevel(logging.WARNING)
|
|
187
|
+
try:
|
|
188
|
+
formatter = logging.Formatter(fmt=fmt, datefmt=datefmt)
|
|
189
|
+
except TypeError:
|
|
190
|
+
# Compatibility with very old logging versions (almost never used)
|
|
191
|
+
formatter = logging.Formatter(fmt)
|
|
192
|
+
h.setFormatter(formatter)
|
|
193
|
+
logger.addHandler(h)
|
|
194
|
+
|
|
195
|
+
logger.propagate = False # Avoid bubbling up to root logger
|
|
196
|
+
return logger
|
|
197
|
+
|
|
198
|
+
# ---- New API: debug with "function bit" ----
|
|
199
|
+
def debugx(self, curr_log_level_enum, msg, *args, **kwargs):
|
|
200
|
+
"""
|
|
201
|
+
Debug with "function bit".
|
|
202
|
+
Conditions:
|
|
203
|
+
1) Standard logging level allowed (Logger.level / Handler.level)
|
|
204
|
+
2) Custom bit included (self._log_level)
|
|
205
|
+
Only then will it output.
|
|
206
|
+
"""
|
|
207
|
+
if self.isEnabledFor(logging.DEBUG) and self.is_enabled_for_loglevel(curr_log_level_enum):
|
|
208
|
+
# Keep consistent with logging convention, parameters use % placeholder, formatted in Handler/Formatter
|
|
209
|
+
self.debug(msg, *args, **kwargs)
|
|
210
|
+
|
|
211
|
+
def debug_sign(self, msg, *args, **kwargs):
|
|
212
|
+
self.debugx(LogLevel.LOG_DEBUG_WITH_SIGNING, "[Sign] " + msg, *args, **kwargs)
|
|
213
|
+
|
|
214
|
+
def debug_endpoint(self, msg, *args, **kwargs):
|
|
215
|
+
self.debugx(LogLevel.LOG_DEBUG_WITH_ENDPOINT, "[Endpoint] " + msg, *args, **kwargs)
|
|
216
|
+
|
|
217
|
+
def debug_retry(self, msg, *args, **kwargs):
|
|
218
|
+
self.debugx(LogLevel.LOG_DEBUG_WITH_REQUEST, "[Retry] " + msg, *args, **kwargs)
|
|
219
|
+
|
|
220
|
+
def debug_config(self, msg, *args, **kwargs):
|
|
221
|
+
self.debugx(LogLevel.LOG_DEBUG_WITH_CONFIG, "[Config] " + msg, *args, **kwargs)
|
|
222
|
+
|
|
223
|
+
def debug_request(self, msg, *args, is_body=False, **kwargs):
|
|
224
|
+
if is_body:
|
|
225
|
+
self.debugx(LogLevel.LOG_DEBUG_WITH_REQUEST_BODY, "[Request] " + msg, *args, **kwargs)
|
|
226
|
+
else:
|
|
227
|
+
self.debugx(LogLevel.LOG_DEBUG_WITH_REQUEST, "[Request] " + msg, *args, **kwargs)
|
|
228
|
+
|
|
229
|
+
def debug_response(self, msg, *args, is_body=False, **kwargs):
|
|
230
|
+
if is_body:
|
|
231
|
+
self.debugx(LogLevel.LOG_DEBUG_WITH_RESPONSE_BODY, "[Response] " + msg, *args, **kwargs)
|
|
232
|
+
else:
|
|
233
|
+
self.debugx(LogLevel.LOG_DEBUG_WITH_RESPONSE, "[Response] " + msg, *args, **kwargs)
|
|
234
|
+
|
|
235
|
+
sdk_core_logger = SdkCoreLogger.get_sdk_logger(SDK_DEBUGGER_LOG_NAME, debug=False, log_level=LogLevel.LOG_DEBUG_ALL.mask)
|
volcenginesdkcore/rest.py
CHANGED
|
@@ -15,6 +15,8 @@ import six
|
|
|
15
15
|
from six.moves.urllib.parse import urlencode
|
|
16
16
|
from urllib3 import Retry
|
|
17
17
|
|
|
18
|
+
from volcenginesdkcore.observability.debugger import sdk_core_logger, LogLevel
|
|
19
|
+
|
|
18
20
|
try:
|
|
19
21
|
import urllib3
|
|
20
22
|
except ImportError:
|
|
@@ -39,6 +41,68 @@ class RESTResponse(io.IOBase):
|
|
|
39
41
|
"""Returns a given response header."""
|
|
40
42
|
return self.urllib3_response.getheader(name, default)
|
|
41
43
|
|
|
44
|
+
|
|
45
|
+
def log_request(method, url, query_params, headers, body, post_params, request_time_out):
|
|
46
|
+
sdk_core_logger.debug_request("request url: %s %s", method, url)
|
|
47
|
+
if request_time_out:
|
|
48
|
+
sdk_core_logger.debug_request("request timeout: %s", request_time_out)
|
|
49
|
+
|
|
50
|
+
if query_params:
|
|
51
|
+
sdk_core_logger.debug_request("query params: %s", query_params)
|
|
52
|
+
|
|
53
|
+
if headers:
|
|
54
|
+
sdk_core_logger.debug_request("headers:")
|
|
55
|
+
for k, v in headers.items():
|
|
56
|
+
sdk_core_logger.debug_request(" %s: %s", k, v)
|
|
57
|
+
|
|
58
|
+
if post_params:
|
|
59
|
+
sdk_core_logger.debug_request("post params: %s", post_params)
|
|
60
|
+
|
|
61
|
+
if body:
|
|
62
|
+
# body may be bytes and needs to be decoded
|
|
63
|
+
if isinstance(body, bytes):
|
|
64
|
+
try:
|
|
65
|
+
body = body.decode("utf-8")
|
|
66
|
+
except Exception:
|
|
67
|
+
body = str(body)
|
|
68
|
+
sdk_core_logger.debug_request("body: %s", body, is_body=True)
|
|
69
|
+
|
|
70
|
+
|
|
71
|
+
def log_response(r, _preload_content):
|
|
72
|
+
sdk_core_logger.debugx(LogLevel.LOG_DEBUG_WITH_REQUEST_ID, "[Response] request id: %s", r.getheader("X-Tt-Logid"))
|
|
73
|
+
sdk_core_logger.debug_response("status: %s", r.status)
|
|
74
|
+
sdk_core_logger.debug_response("reason: %s", r.reason)
|
|
75
|
+
sdk_core_logger.debug_response("headers:")
|
|
76
|
+
for k, v in r.getheaders().items():
|
|
77
|
+
sdk_core_logger.debug_response(" %s: %s", k, v)
|
|
78
|
+
if _preload_content:
|
|
79
|
+
sdk_core_logger.debug_response("body: %s", r.data, is_body=True)
|
|
80
|
+
else:
|
|
81
|
+
preview_len = 2048
|
|
82
|
+
# Stream not preloaded: avoid consuming the stream, just do a "peek"
|
|
83
|
+
preview_bytes = b""
|
|
84
|
+
try:
|
|
85
|
+
# urllib3.HTTPResponse.peek(n) is usually available and does not advance the read pointer
|
|
86
|
+
if hasattr(r, "peek"):
|
|
87
|
+
preview_bytes = r.peek(preview_len) or b""
|
|
88
|
+
else:
|
|
89
|
+
# Some implementations may cache r.data (not read the underlying stream again)
|
|
90
|
+
cached = getattr(r, "data", b"")
|
|
91
|
+
if cached:
|
|
92
|
+
preview_bytes = cached[:preview_len]
|
|
93
|
+
except Exception:
|
|
94
|
+
preview_bytes = b""
|
|
95
|
+
|
|
96
|
+
if preview_bytes:
|
|
97
|
+
try:
|
|
98
|
+
preview_text = preview_bytes.decode("utf-8", errors="replace")
|
|
99
|
+
except Exception:
|
|
100
|
+
preview_text = repr(preview_bytes)
|
|
101
|
+
sdk_core_logger.debug_response("response body (preview, %d bytes): %s", len(preview_bytes), preview_text, is_body=True)
|
|
102
|
+
else:
|
|
103
|
+
sdk_core_logger.debug_response("response body (preview): <streaming, not read>", is_body=True)
|
|
104
|
+
|
|
105
|
+
|
|
42
106
|
class RESTClientObject(object):
|
|
43
107
|
|
|
44
108
|
def __init__(self, configuration, pools_size=4, maxsize=None):
|
|
@@ -175,6 +239,8 @@ class RESTClientObject(object):
|
|
|
175
239
|
if 'Content-Type' not in headers:
|
|
176
240
|
headers['Content-Type'] = 'application/json'
|
|
177
241
|
|
|
242
|
+
log_request(method, url, query_params, headers, body, post_params, timeout)
|
|
243
|
+
|
|
178
244
|
try:
|
|
179
245
|
# For `POST`, `PUT`, `PATCH`, `OPTIONS`, `DELETE`
|
|
180
246
|
if method in ['POST', 'PUT', 'PATCH', 'OPTIONS', 'DELETE']:
|
|
@@ -248,7 +314,7 @@ class RESTClientObject(object):
|
|
|
248
314
|
|
|
249
315
|
# log response body
|
|
250
316
|
logger.debug("response body: %s", r.data)
|
|
251
|
-
|
|
317
|
+
log_response(r, _preload_content)
|
|
252
318
|
if not 200 <= r.status <= 299:
|
|
253
319
|
raise ApiException(http_resp=r)
|
|
254
320
|
|