mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-05-02 23:31:25 -07:00
* Updated Avi Modules with following 1. Support to perform patch operation using the modules. The data update method is selected using avi_api_update_method=patch and patch operation is determined by avi_api_patch_op. The patch data is the normal params that are provided in the modules 2. Support for avi_credentials as single authentication dictionary for all API calls. This is preferred way as opposed to previously all credentials details would pollute the individual Ansible tasks. It also allows the module development to be enhanced without breaking compatibility for new authentication schemes like SAML etc. 3. Support for sharing api_context between the module invocations. This is a workaround to not do multiple logins to Avi Controller and be able to re-use single login across multiple REST API calls. 4. Documentation update for new parameters and existing ones with Units data. * Fixed the pylint and pep8 errors caused due to pycharm editor auto formatting
567 lines
29 KiB
Python
567 lines
29 KiB
Python
#!/usr/bin/python
|
|
#
|
|
# Created on Aug 25, 2016
|
|
# @author: Gaurav Rastogi (grastogi@avinetworks.com)
|
|
# Eric Anderson (eanderson@avinetworks.com)
|
|
# module_check: supported
|
|
# Avi Version: 17.1.1
|
|
#
|
|
#
|
|
# This file is part of Ansible
|
|
#
|
|
# Ansible is free software: you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation, either version 3 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# Ansible is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with Ansible. If not, see <http://www.gnu.org/licenses/>.
|
|
#
|
|
|
|
ANSIBLE_METADATA = {'metadata_version': '1.1',
|
|
'status': ['preview'],
|
|
'supported_by': 'community'}
|
|
|
|
DOCUMENTATION = '''
|
|
---
|
|
module: avi_analyticsprofile
|
|
author: Gaurav Rastogi (grastogi@avinetworks.com)
|
|
|
|
short_description: Module for setup of AnalyticsProfile Avi RESTful Object
|
|
description:
|
|
- This module is used to configure AnalyticsProfile object
|
|
- more examples at U(https://github.com/avinetworks/devops)
|
|
requirements: [ avisdk ]
|
|
version_added: "2.3"
|
|
options:
|
|
state:
|
|
description:
|
|
- The state that should be applied on the entity.
|
|
default: present
|
|
choices: ["absent", "present"]
|
|
avi_api_update_method:
|
|
description:
|
|
- Default method for object update is HTTP PUT.
|
|
- Setting to patch will override that behavior to use HTTP PATCH.
|
|
version_added: "2.5"
|
|
default: put
|
|
choices: ["put", "patch"]
|
|
avi_api_patch_op:
|
|
description:
|
|
- Patch operation to use when using avi_api_update_method as patch.
|
|
version_added: "2.5"
|
|
choices: ["add", "replace", "delete"]
|
|
apdex_response_threshold:
|
|
description:
|
|
- If a client receives an http response in less than the satisfactory latency threshold, the request is considered satisfied.
|
|
- It is considered tolerated if it is not satisfied and less than tolerated latency factor multiplied by the satisfactory latency threshold.
|
|
- Greater than this number and the client's request is considered frustrated.
|
|
- Allowed values are 1-30000.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 500.
|
|
- Units(MILLISECONDS).
|
|
apdex_response_tolerated_factor:
|
|
description:
|
|
- Client tolerated response latency factor.
|
|
- Client must receive a response within this factor times the satisfactory threshold (apdex_response_threshold) to be considered tolerated.
|
|
- Allowed values are 1-1000.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 4.0.
|
|
apdex_rtt_threshold:
|
|
description:
|
|
- Satisfactory client to avi round trip time(rtt).
|
|
- Allowed values are 1-2000.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 250.
|
|
- Units(MILLISECONDS).
|
|
apdex_rtt_tolerated_factor:
|
|
description:
|
|
- Tolerated client to avi round trip time(rtt) factor.
|
|
- It is a multiple of apdex_rtt_tolerated_factor.
|
|
- Allowed values are 1-1000.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 4.0.
|
|
apdex_rum_threshold:
|
|
description:
|
|
- If a client is able to load a page in less than the satisfactory latency threshold, the pageload is considered satisfied.
|
|
- It is considered tolerated if it is greater than satisfied but less than the tolerated latency multiplied by satisifed latency.
|
|
- Greater than this number and the client's request is considered frustrated.
|
|
- A pageload includes the time for dns lookup, download of all http objects, and page render time.
|
|
- Allowed values are 1-30000.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 5000.
|
|
- Units(MILLISECONDS).
|
|
apdex_rum_tolerated_factor:
|
|
description:
|
|
- Virtual service threshold factor for tolerated page load time (plt) as multiple of apdex_rum_threshold.
|
|
- Allowed values are 1-1000.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 4.0.
|
|
apdex_server_response_threshold:
|
|
description:
|
|
- A server http response is considered satisfied if latency is less than the satisfactory latency threshold.
|
|
- The response is considered tolerated when it is greater than satisfied but less than the tolerated latency factor * s_latency.
|
|
- Greater than this number and the server response is considered frustrated.
|
|
- Allowed values are 1-30000.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 400.
|
|
- Units(MILLISECONDS).
|
|
apdex_server_response_tolerated_factor:
|
|
description:
|
|
- Server tolerated response latency factor.
|
|
- Servermust response within this factor times the satisfactory threshold (apdex_server_response_threshold) to be considered tolerated.
|
|
- Allowed values are 1-1000.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 4.0.
|
|
apdex_server_rtt_threshold:
|
|
description:
|
|
- Satisfactory client to avi round trip time(rtt).
|
|
- Allowed values are 1-2000.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 125.
|
|
- Units(MILLISECONDS).
|
|
apdex_server_rtt_tolerated_factor:
|
|
description:
|
|
- Tolerated client to avi round trip time(rtt) factor.
|
|
- It is a multiple of apdex_rtt_tolerated_factor.
|
|
- Allowed values are 1-1000.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 4.0.
|
|
client_log_config:
|
|
description:
|
|
- Configure which logs are sent to the avi controller from ses and how they are processed.
|
|
client_log_streaming_config:
|
|
description:
|
|
- Configure to stream logs to an external server.
|
|
- Field introduced in 17.1.1.
|
|
version_added: "2.4"
|
|
conn_lossy_ooo_threshold:
|
|
description:
|
|
- A connection between client and avi is considered lossy when more than this percentage of out of order packets are received.
|
|
- Allowed values are 1-100.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 50.
|
|
- Units(PERCENT).
|
|
conn_lossy_timeo_rexmt_threshold:
|
|
description:
|
|
- A connection between client and avi is considered lossy when more than this percentage of packets are retransmitted due to timeout.
|
|
- Allowed values are 1-100.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 20.
|
|
- Units(PERCENT).
|
|
conn_lossy_total_rexmt_threshold:
|
|
description:
|
|
- A connection between client and avi is considered lossy when more than this percentage of packets are retransmitted.
|
|
- Allowed values are 1-100.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 50.
|
|
- Units(PERCENT).
|
|
conn_lossy_zero_win_size_event_threshold:
|
|
description:
|
|
- A client connection is considered lossy when percentage of times a packet could not be trasmitted due to tcp zero window is above this threshold.
|
|
- Allowed values are 0-100.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 2.
|
|
- Units(PERCENT).
|
|
conn_server_lossy_ooo_threshold:
|
|
description:
|
|
- A connection between avi and server is considered lossy when more than this percentage of out of order packets are received.
|
|
- Allowed values are 1-100.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 50.
|
|
- Units(PERCENT).
|
|
conn_server_lossy_timeo_rexmt_threshold:
|
|
description:
|
|
- A connection between avi and server is considered lossy when more than this percentage of packets are retransmitted due to timeout.
|
|
- Allowed values are 1-100.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 20.
|
|
- Units(PERCENT).
|
|
conn_server_lossy_total_rexmt_threshold:
|
|
description:
|
|
- A connection between avi and server is considered lossy when more than this percentage of packets are retransmitted.
|
|
- Allowed values are 1-100.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 50.
|
|
- Units(PERCENT).
|
|
conn_server_lossy_zero_win_size_event_threshold:
|
|
description:
|
|
- A server connection is considered lossy when percentage of times a packet could not be trasmitted due to tcp zero window is above this threshold.
|
|
- Allowed values are 0-100.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 2.
|
|
- Units(PERCENT).
|
|
description:
|
|
description:
|
|
- User defined description for the object.
|
|
disable_se_analytics:
|
|
description:
|
|
- Disable node (service engine) level analytics forvs metrics.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as False.
|
|
disable_server_analytics:
|
|
description:
|
|
- Disable analytics on backend servers.
|
|
- This may be desired in container environment when there are large number of ephemeral servers.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as False.
|
|
exclude_client_close_before_request_as_error:
|
|
description:
|
|
- Exclude client closed connection before an http request could be completed from being classified as an error.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as False.
|
|
exclude_dns_policy_drop_as_significant:
|
|
description:
|
|
- Exclude dns policy drops from the list of errors.
|
|
- Field introduced in 17.2.2.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as False.
|
|
version_added: "2.5"
|
|
exclude_gs_down_as_error:
|
|
description:
|
|
- Exclude queries to gslb services that are operationally down from the list of errors.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as False.
|
|
exclude_http_error_codes:
|
|
description:
|
|
- List of http status codes to be excluded from being classified as an error.
|
|
- Error connections or responses impacts health score, are included as significant logs, and may be classified as part of a dos attack.
|
|
exclude_invalid_dns_domain_as_error:
|
|
description:
|
|
- Exclude dns queries to domains outside the domains configured in the dns application profile from the list of errors.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as False.
|
|
exclude_invalid_dns_query_as_error:
|
|
description:
|
|
- Exclude invalid dns queries from the list of errors.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as False.
|
|
exclude_no_dns_record_as_error:
|
|
description:
|
|
- Exclude queries to domains that did not have configured services/records from the list of errors.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as False.
|
|
exclude_no_valid_gs_member_as_error:
|
|
description:
|
|
- Exclude queries to gslb services that have no available members from the list of errors.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as False.
|
|
exclude_persistence_change_as_error:
|
|
description:
|
|
- Exclude persistence server changed while load balancing' from the list of errors.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as False.
|
|
exclude_server_dns_error_as_error:
|
|
description:
|
|
- Exclude server dns error response from the list of errors.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as False.
|
|
exclude_server_tcp_reset_as_error:
|
|
description:
|
|
- Exclude server tcp reset from errors.
|
|
- It is common for applications like ms exchange.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as False.
|
|
exclude_syn_retransmit_as_error:
|
|
description:
|
|
- Exclude 'server unanswered syns' from the list of errors.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as False.
|
|
exclude_tcp_reset_as_error:
|
|
description:
|
|
- Exclude tcp resets by client from the list of potential errors.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as False.
|
|
exclude_unsupported_dns_query_as_error:
|
|
description:
|
|
- Exclude unsupported dns queries from the list of errors.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as False.
|
|
hs_event_throttle_window:
|
|
description:
|
|
- Time window (in secs) within which only unique health change events should occur.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 1209600.
|
|
hs_max_anomaly_penalty:
|
|
description:
|
|
- Maximum penalty that may be deducted from health score for anomalies.
|
|
- Allowed values are 0-100.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 10.
|
|
hs_max_resources_penalty:
|
|
description:
|
|
- Maximum penalty that may be deducted from health score for high resource utilization.
|
|
- Allowed values are 0-100.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 25.
|
|
hs_max_security_penalty:
|
|
description:
|
|
- Maximum penalty that may be deducted from health score based on security assessment.
|
|
- Allowed values are 0-100.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 100.
|
|
hs_min_dos_rate:
|
|
description:
|
|
- Dos connection rate below which the dos security assessment will not kick in.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 1000.
|
|
hs_performance_boost:
|
|
description:
|
|
- Adds free performance score credits to health score.
|
|
- It can be used for compensating health score for known slow applications.
|
|
- Allowed values are 0-100.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 0.
|
|
hs_pscore_traffic_threshold_l4_client:
|
|
description:
|
|
- Threshold number of connections in 5min, below which apdexr, apdexc, rum_apdex, and other network quality metrics are not computed.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 10.0.
|
|
hs_pscore_traffic_threshold_l4_server:
|
|
description:
|
|
- Threshold number of connections in 5min, below which apdexr, apdexc, rum_apdex, and other network quality metrics are not computed.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 10.0.
|
|
hs_security_certscore_expired:
|
|
description:
|
|
- Score assigned when the certificate has expired.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 0.0.
|
|
hs_security_certscore_gt30d:
|
|
description:
|
|
- Score assigned when the certificate expires in more than 30 days.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 5.0.
|
|
hs_security_certscore_le07d:
|
|
description:
|
|
- Score assigned when the certificate expires in less than or equal to 7 days.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 2.0.
|
|
hs_security_certscore_le30d:
|
|
description:
|
|
- Score assigned when the certificate expires in less than or equal to 30 days.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 4.0.
|
|
hs_security_chain_invalidity_penalty:
|
|
description:
|
|
- Penalty for allowing certificates with invalid chain.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 1.0.
|
|
hs_security_cipherscore_eq000b:
|
|
description:
|
|
- Score assigned when the minimum cipher strength is 0 bits.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 0.0.
|
|
hs_security_cipherscore_ge128b:
|
|
description:
|
|
- Score assigned when the minimum cipher strength is greater than equal to 128 bits.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 5.0.
|
|
hs_security_cipherscore_lt128b:
|
|
description:
|
|
- Score assigned when the minimum cipher strength is less than 128 bits.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 3.5.
|
|
hs_security_encalgo_score_none:
|
|
description:
|
|
- Score assigned when no algorithm is used for encryption.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 0.0.
|
|
hs_security_encalgo_score_rc4:
|
|
description:
|
|
- Score assigned when rc4 algorithm is used for encryption.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 2.5.
|
|
hs_security_hsts_penalty:
|
|
description:
|
|
- Penalty for not enabling hsts.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 1.0.
|
|
hs_security_nonpfs_penalty:
|
|
description:
|
|
- Penalty for allowing non-pfs handshakes.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 1.0.
|
|
hs_security_selfsignedcert_penalty:
|
|
description:
|
|
- Deprecated.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 1.0.
|
|
hs_security_ssl30_score:
|
|
description:
|
|
- Score assigned when supporting ssl3.0 encryption protocol.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 3.5.
|
|
hs_security_tls10_score:
|
|
description:
|
|
- Score assigned when supporting tls1.0 encryption protocol.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 5.0.
|
|
hs_security_tls11_score:
|
|
description:
|
|
- Score assigned when supporting tls1.1 encryption protocol.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 5.0.
|
|
hs_security_tls12_score:
|
|
description:
|
|
- Score assigned when supporting tls1.2 encryption protocol.
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 5.0.
|
|
hs_security_weak_signature_algo_penalty:
|
|
description:
|
|
- Penalty for allowing weak signature algorithm(s).
|
|
- Allowed values are 0-5.
|
|
- Default value when not specified in API or module is interpreted by Avi Controller as 1.0.
|
|
name:
|
|
description:
|
|
- The name of the analytics profile.
|
|
required: true
|
|
ranges:
|
|
description:
|
|
- List of http status code ranges to be excluded from being classified as an error.
|
|
resp_code_block:
|
|
description:
|
|
- Block of http response codes to be excluded from being classified as an error.
|
|
- Enum options - AP_HTTP_RSP_4XX, AP_HTTP_RSP_5XX.
|
|
tenant_ref:
|
|
description:
|
|
- It is a reference to an object of type tenant.
|
|
url:
|
|
description:
|
|
- Avi controller URL of the object.
|
|
uuid:
|
|
description:
|
|
- Uuid of the analytics profile.
|
|
extends_documentation_fragment:
|
|
- avi
|
|
'''
|
|
|
|
EXAMPLES = """
|
|
- name: Create a custom Analytics profile object
|
|
avi_analyticsprofile:
|
|
controller: '{{ controller }}'
|
|
username: '{{ username }}'
|
|
password: '{{ password }}'
|
|
apdex_response_threshold: 500
|
|
apdex_response_tolerated_factor: 4.0
|
|
apdex_rtt_threshold: 250
|
|
apdex_rtt_tolerated_factor: 4.0
|
|
apdex_rum_threshold: 5000
|
|
apdex_rum_tolerated_factor: 4.0
|
|
apdex_server_response_threshold: 400
|
|
apdex_server_response_tolerated_factor: 4.0
|
|
apdex_server_rtt_threshold: 125
|
|
apdex_server_rtt_tolerated_factor: 4.0
|
|
conn_lossy_ooo_threshold: 50
|
|
conn_lossy_timeo_rexmt_threshold: 20
|
|
conn_lossy_total_rexmt_threshold: 50
|
|
conn_lossy_zero_win_size_event_threshold: 2
|
|
conn_server_lossy_ooo_threshold: 50
|
|
conn_server_lossy_timeo_rexmt_threshold: 20
|
|
conn_server_lossy_total_rexmt_threshold: 50
|
|
conn_server_lossy_zero_win_size_event_threshold: 2
|
|
disable_se_analytics: false
|
|
disable_server_analytics: false
|
|
exclude_client_close_before_request_as_error: false
|
|
exclude_persistence_change_as_error: false
|
|
exclude_server_tcp_reset_as_error: false
|
|
exclude_syn_retransmit_as_error: false
|
|
exclude_tcp_reset_as_error: false
|
|
hs_event_throttle_window: 1209600
|
|
hs_max_anomaly_penalty: 10
|
|
hs_max_resources_penalty: 25
|
|
hs_max_security_penalty: 100
|
|
hs_min_dos_rate: 1000
|
|
hs_performance_boost: 20
|
|
hs_pscore_traffic_threshold_l4_client: 10.0
|
|
hs_pscore_traffic_threshold_l4_server: 10.0
|
|
hs_security_certscore_expired: 0.0
|
|
hs_security_certscore_gt30d: 5.0
|
|
hs_security_certscore_le07d: 2.0
|
|
hs_security_certscore_le30d: 4.0
|
|
hs_security_chain_invalidity_penalty: 1.0
|
|
hs_security_cipherscore_eq000b: 0.0
|
|
hs_security_cipherscore_ge128b: 5.0
|
|
hs_security_cipherscore_lt128b: 3.5
|
|
hs_security_encalgo_score_none: 0.0
|
|
hs_security_encalgo_score_rc4: 2.5
|
|
hs_security_hsts_penalty: 0.0
|
|
hs_security_nonpfs_penalty: 1.0
|
|
hs_security_selfsignedcert_penalty: 1.0
|
|
hs_security_ssl30_score: 3.5
|
|
hs_security_tls10_score: 5.0
|
|
hs_security_tls11_score: 5.0
|
|
hs_security_tls12_score: 5.0
|
|
hs_security_weak_signature_algo_penalty: 1.0
|
|
name: jason-analytics-profile
|
|
tenant_ref: Demo
|
|
"""
|
|
|
|
RETURN = '''
|
|
obj:
|
|
description: AnalyticsProfile (api/analyticsprofile) object
|
|
returned: success, changed
|
|
type: dict
|
|
'''
|
|
|
|
from ansible.module_utils.basic import AnsibleModule
|
|
try:
|
|
from ansible.module_utils.network.avi.avi import (
|
|
avi_common_argument_spec, HAS_AVI, avi_ansible_api)
|
|
except ImportError:
|
|
HAS_AVI = False
|
|
|
|
|
|
def main():
|
|
argument_specs = dict(
|
|
state=dict(default='present',
|
|
choices=['absent', 'present']),
|
|
avi_api_update_method=dict(default='put',
|
|
choices=['put', 'patch']),
|
|
avi_api_patch_op=dict(choices=['add', 'replace', 'delete']),
|
|
apdex_response_threshold=dict(type='int',),
|
|
apdex_response_tolerated_factor=dict(type='float',),
|
|
apdex_rtt_threshold=dict(type='int',),
|
|
apdex_rtt_tolerated_factor=dict(type='float',),
|
|
apdex_rum_threshold=dict(type='int',),
|
|
apdex_rum_tolerated_factor=dict(type='float',),
|
|
apdex_server_response_threshold=dict(type='int',),
|
|
apdex_server_response_tolerated_factor=dict(type='float',),
|
|
apdex_server_rtt_threshold=dict(type='int',),
|
|
apdex_server_rtt_tolerated_factor=dict(type='float',),
|
|
client_log_config=dict(type='dict',),
|
|
client_log_streaming_config=dict(type='dict',),
|
|
conn_lossy_ooo_threshold=dict(type='int',),
|
|
conn_lossy_timeo_rexmt_threshold=dict(type='int',),
|
|
conn_lossy_total_rexmt_threshold=dict(type='int',),
|
|
conn_lossy_zero_win_size_event_threshold=dict(type='int',),
|
|
conn_server_lossy_ooo_threshold=dict(type='int',),
|
|
conn_server_lossy_timeo_rexmt_threshold=dict(type='int',),
|
|
conn_server_lossy_total_rexmt_threshold=dict(type='int',),
|
|
conn_server_lossy_zero_win_size_event_threshold=dict(type='int',),
|
|
description=dict(type='str',),
|
|
disable_se_analytics=dict(type='bool',),
|
|
disable_server_analytics=dict(type='bool',),
|
|
exclude_client_close_before_request_as_error=dict(type='bool',),
|
|
exclude_dns_policy_drop_as_significant=dict(type='bool',),
|
|
exclude_gs_down_as_error=dict(type='bool',),
|
|
exclude_http_error_codes=dict(type='list',),
|
|
exclude_invalid_dns_domain_as_error=dict(type='bool',),
|
|
exclude_invalid_dns_query_as_error=dict(type='bool',),
|
|
exclude_no_dns_record_as_error=dict(type='bool',),
|
|
exclude_no_valid_gs_member_as_error=dict(type='bool',),
|
|
exclude_persistence_change_as_error=dict(type='bool',),
|
|
exclude_server_dns_error_as_error=dict(type='bool',),
|
|
exclude_server_tcp_reset_as_error=dict(type='bool',),
|
|
exclude_syn_retransmit_as_error=dict(type='bool',),
|
|
exclude_tcp_reset_as_error=dict(type='bool',),
|
|
exclude_unsupported_dns_query_as_error=dict(type='bool',),
|
|
hs_event_throttle_window=dict(type='int',),
|
|
hs_max_anomaly_penalty=dict(type='int',),
|
|
hs_max_resources_penalty=dict(type='int',),
|
|
hs_max_security_penalty=dict(type='int',),
|
|
hs_min_dos_rate=dict(type='int',),
|
|
hs_performance_boost=dict(type='int',),
|
|
hs_pscore_traffic_threshold_l4_client=dict(type='float',),
|
|
hs_pscore_traffic_threshold_l4_server=dict(type='float',),
|
|
hs_security_certscore_expired=dict(type='float',),
|
|
hs_security_certscore_gt30d=dict(type='float',),
|
|
hs_security_certscore_le07d=dict(type='float',),
|
|
hs_security_certscore_le30d=dict(type='float',),
|
|
hs_security_chain_invalidity_penalty=dict(type='float',),
|
|
hs_security_cipherscore_eq000b=dict(type='float',),
|
|
hs_security_cipherscore_ge128b=dict(type='float',),
|
|
hs_security_cipherscore_lt128b=dict(type='float',),
|
|
hs_security_encalgo_score_none=dict(type='float',),
|
|
hs_security_encalgo_score_rc4=dict(type='float',),
|
|
hs_security_hsts_penalty=dict(type='float',),
|
|
hs_security_nonpfs_penalty=dict(type='float',),
|
|
hs_security_selfsignedcert_penalty=dict(type='float',),
|
|
hs_security_ssl30_score=dict(type='float',),
|
|
hs_security_tls10_score=dict(type='float',),
|
|
hs_security_tls11_score=dict(type='float',),
|
|
hs_security_tls12_score=dict(type='float',),
|
|
hs_security_weak_signature_algo_penalty=dict(type='float',),
|
|
name=dict(type='str', required=True),
|
|
ranges=dict(type='list',),
|
|
resp_code_block=dict(type='list',),
|
|
tenant_ref=dict(type='str',),
|
|
url=dict(type='str',),
|
|
uuid=dict(type='str',),
|
|
)
|
|
argument_specs.update(avi_common_argument_spec())
|
|
module = AnsibleModule(
|
|
argument_spec=argument_specs, supports_check_mode=True)
|
|
if not HAS_AVI:
|
|
return module.fail_json(msg=(
|
|
'Avi python API SDK (avisdk>=17.1) is not installed. '
|
|
'For more details visit https://github.com/avinetworks/sdk.'))
|
|
return avi_ansible_api(module, 'analyticsprofile',
|
|
set([]))
|
|
|
|
if __name__ == '__main__':
|
|
main()
|