| Server IP : 213.136.93.164 / Your IP : 216.73.216.104 Web Server : Apache System : Linux m14200.contabo.net 5.14.0-611.54.1.el9_7.x86_64 #1 SMP PREEMPT_DYNAMIC Wed May 6 18:03:03 EDT 2026 x86_64 User : ki692510 ( 1047) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /opt/cloudlinux/venv/lib/python3.11/site-packages/ssa/configuration/schemes/ |
Upload File : |
# -*- coding: utf-8 -*-
# Copyright © Cloud Linux GmbH & Cloud Linux Software, Inc 2010-2021 All Rights Reserved
#
# Licensed under CLOUD LINUX LICENSE AGREEMENT
# http://cloudlinux.com/docs/LICENSE.TXT
"""
This module contains validation scheme for external autotracing tunables
"""
from schema import Schema, And, Optional, Use
tunables_schema = Schema({
Optional('only_wp',
default=True): And(bool,
error='bad value of `only_wp` option, should be true or false'),
Optional('skip_nginx',
default=True): And(bool,
error='bad value of `skip_nginx` option, should be true or false'),
Optional('density',
default=True): And(bool,
error='bad value of `density` option, should be true or false'),
Optional('density_threshold',
default=0.4): And(Use(lambda n: float(n)),
lambda n: 0.0 < n <= 1.0,
error='the value of `density_threshold` option could not be negative or greater than 1'),
Optional('slow_duration_threshold',
default=12000000): And(Use(lambda n: float(n)),
lambda n: n > 0.0,
error='the value of `slow_duration_threshold` option should be positive'),
Optional('slow_duration_percentage',
default=100): And(int, lambda n: 0 <= n <= 100,
error='the value of `slow_duration_percentage` option could not be negative or greater than 100%'),
Optional('max_slow_duration_threshold',
default=30000000): And(Use(lambda n: float(n)),
lambda n: n > 0.0,
error='the value of `max_slow_duration_threshold` option should be positive'),
Optional('max_slow_duration_percentage',
default=100): And(int, lambda n: 0 <= n <= 100,
error='the value of `max_slow_duration_percentage` option could not be negative or greater than 100%'),
Optional('allowed_throttling_percentage',
default=0): And(int, lambda n: 0 <= n <= 100,
error='the value of `allowed_throttling_percentage` option could not be negative or greater than 100%'),
Optional('min_retracing_interval',
default=10): And(int, lambda n: n > 0,
error='the value of `min_retracing_interval` option should be a positive integer'),
Optional('request_number',
default=5): And(int, lambda n: n > 0,
error='the value of `request_number` option should be a positive integer'),
Optional('per_domain_limit',
default=1): And(int, lambda n: n >= 0,
error='the value of `per_domain_limit` option could not be negative or non-integer'),
Optional('per_server_limit',
default=5): And(int, lambda n: n >= 0,
error='the value of `per_server_limit` option could not be negative or non-integer'),
Optional('rules_version',
default='l.0.1.4'): And(Use(lambda n: str(n)),
error='the value of `rules_version` should be a string')
}, ignore_extra_keys=True)