updated yml parameters description
This commit is contained in:
parent
55afd4df5d
commit
7cd71983c9
@ -34,7 +34,7 @@ server:
|
||||
pem:
|
||||
# Path to the server certificate file (holds server certificate or certificate chain, may include server private key)
|
||||
cert_file: "${SSL_PEM_CERT:server.pem}"
|
||||
# Path to the server certificate private key file. Optional by default. Required if the private key is not present in the server certificate file;
|
||||
# Path to the server certificate private key file (optional). Required if the private key is not present in the server certificate file
|
||||
key_file: "${SSL_PEM_KEY:server_key.pem}"
|
||||
# Server certificate private key password (optional)
|
||||
key_password: "${SSL_PEM_KEY_PASSWORD:server_key_password}"
|
||||
@ -68,7 +68,7 @@ server:
|
||||
refresh_pool_size: "${TB_SERVER_WS_DYNAMIC_PAGE_LINK_REFRESH_POOL_SIZE:1}"
|
||||
# Maximum number of dynamic queries per refresh interval. For example, no more than 10 alarm queries are executed by the user simultaneously in all browsers.
|
||||
max_alarm_queries_per_refresh_interval: "${TB_SERVER_WS_MAX_ALARM_QUERIES_PER_REFRESH_INTERVAL:10}"
|
||||
# Maximum number of dynamic queries per user. For example, no more than 10 alarm widgets opened by the user simultaneously in all browsers<
|
||||
# Maximum number of dynamic queries per user. For example, no more than 10 alarm widgets opened by the user simultaneously in all browsers
|
||||
max_per_user: "${TB_SERVER_WS_DYNAMIC_PAGE_LINK_MAX_PER_USER:10}"
|
||||
# Maximum number of entities returned for single entity subscription. For example, no more than 10,000 entities on the map widget
|
||||
max_entities_per_data_subscription: "${TB_SERVER_WS_MAX_ENTITIES_PER_DATA_SUBSCRIPTION:10000}"
|
||||
@ -79,7 +79,7 @@ server:
|
||||
rest:
|
||||
server_side_rpc:
|
||||
# Minimum value of the server-side RPC timeout. May override value provided in the REST API call.
|
||||
# Since 2.5 migration to queues, the RPC delay depends on the size of the pending messages in the queue,
|
||||
# Since 2.5 migration to queues, the RPC delay depends on the size of the pending messages in the queue.
|
||||
# So default UI parameter of 500ms may not be sufficient for loaded environments.
|
||||
min_timeout: "${MIN_SERVER_SIDE_RPC_TIMEOUT:5000}"
|
||||
# Default value of the server-side RPC timeout.
|
||||
@ -93,7 +93,7 @@ app:
|
||||
# Application version
|
||||
version: "@project.version@"
|
||||
|
||||
# Zookeeper connection parameters. Used for service discovery.
|
||||
# Zookeeper connection parameters
|
||||
zk:
|
||||
# Enable/disable zookeeper discovery service.
|
||||
enabled: "${ZOOKEEPER_ENABLED:false}"
|
||||
@ -160,18 +160,18 @@ security:
|
||||
# Mail settings parameters
|
||||
mail:
|
||||
oauth2:
|
||||
# Interval to check that the refresh token will expire in seconds(by default, 1 day).
|
||||
# Interval for checking refresh token expiration in seconds(by default, 1 day).
|
||||
refreshTokenCheckingInterval: "${REFRESH_TOKEN_EXPIRATION_CHECKING_INTERVAL:86400}"
|
||||
|
||||
# Usage statistics parameters
|
||||
usage:
|
||||
stats:
|
||||
report:
|
||||
# Enable/Disable the collection of statistics about API usage. Collected on a system and tenant level by default
|
||||
# Enable/Disable the collection of API usage statistics. Collected on a system and tenant level by default
|
||||
enabled: "${USAGE_STATS_REPORT_ENABLED:true}"
|
||||
# Enable/Disable collection of statistics about API usage on a customer level
|
||||
# Enable/Disable the collection of API usage statistics on a customer level
|
||||
enabled_per_customer: "${USAGE_STATS_REPORT_PER_CUSTOMER_ENABLED:false}"
|
||||
# Interval of reporting the statistics. By default, the summarized statistics are sent every 10 seconds
|
||||
# Statistics reporting interval, set to send summarized data every 10 seconds by default
|
||||
interval: "${USAGE_STATS_REPORT_INTERVAL:10}"
|
||||
check:
|
||||
# Interval of checking the start of the next cycle and re-enabling the blocked tenants/customers
|
||||
@ -197,7 +197,7 @@ ui:
|
||||
database:
|
||||
ts_max_intervals: "${DATABASE_TS_MAX_INTERVALS:700}" # Max number of DB queries generated by a single API call to fetch telemetry records
|
||||
ts:
|
||||
type: "${DATABASE_TS_TYPE:sql}" # cassandra, sql, or timescale (for hybrid mode, DATABASE_TS_TYPE value should be cassandra or timescale)
|
||||
type: "${DATABASE_TS_TYPE:sql}" # cassandra, sql, or timescale (for hybrid mode, DATABASE_TS_TYPE value should be cassandra, or timescale)
|
||||
ts_latest:
|
||||
type: "${DATABASE_TS_LATEST_TYPE:sql}" # cassandra, sql, or timescale (for hybrid mode, DATABASE_TS_TYPE value should be cassandra, or timescale)
|
||||
|
||||
@ -276,7 +276,7 @@ cassandra:
|
||||
# Returns the hint to the size of the underlying buffers for outgoing network I/O. By default, this option is not set by the driver. The actual value will be the default from the underlying Netty transport
|
||||
send_buffer_size: "${CASSANDRA_SOCKET_SEND_BUFFER_SIZE:}"
|
||||
|
||||
# Cassandra cluster connection query parameters #
|
||||
# Cassandra cluster connection query parameters
|
||||
query:
|
||||
# Consistency levels in Cassandra can be configured to manage availability versus data accuracy. The consistency level defaults to ONE for all write and read operations
|
||||
read_consistency_level: "${CASSANDRA_READ_CONSISTENCY_LEVEL:ONE}"
|
||||
@ -374,12 +374,12 @@ sql:
|
||||
batch_threads: "${SQL_TIMESCALE_BATCH_THREADS:3}" # batch thread count has to be a prime number like 3 or 5 to gain perfect hash distribution
|
||||
ttl:
|
||||
ts:
|
||||
# The parameter to specify whether to use TTL (Time To Live) for timeseries records
|
||||
# Enable/disable TTL (Time To Live) for timeseries records
|
||||
enabled: "${SQL_TTL_TS_ENABLED:true}"
|
||||
execution_interval_ms: "${SQL_TTL_TS_EXECUTION_INTERVAL:86400000}" # Number of milliseconds. The current value corresponds to one day
|
||||
ts_key_value_ttl: "${SQL_TTL_TS_TS_KEY_VALUE_TTL:0}" # Number of seconds
|
||||
events:
|
||||
# The parameter to specify whether to use TTL (Time To Live) for event records
|
||||
# Enable/disable TTL (Time To Live) for event records
|
||||
enabled: "${SQL_TTL_EVENTS_ENABLED:true}"
|
||||
execution_interval_ms: "${SQL_TTL_EVENTS_EXECUTION_INTERVAL:3600000}" # Number of milliseconds (max random initial delay and fixed period).
|
||||
# Number of seconds. TTL is disabled by default. The accuracy of the cleanup depends on the sql.events.partition_size parameter.
|
||||
@ -387,21 +387,21 @@ sql:
|
||||
# Number of seconds. The current value corresponds to one week. The accuracy of the cleanup depends on the sql.events.debug_partition_size parameter.
|
||||
debug_events_ttl: "${SQL_TTL_EVENTS_DEBUG_EVENTS_TTL:604800}"
|
||||
edge_events:
|
||||
enabled: "${SQL_TTL_EDGE_EVENTS_ENABLED:true}" # The parameter to specify whether to use TTL (Time To Live) for egde event records
|
||||
enabled: "${SQL_TTL_EDGE_EVENTS_ENABLED:true}" # Enable/disable TTL (Time To Live) for edge event records
|
||||
execution_interval_ms: "${SQL_TTL_EDGE_EVENTS_EXECUTION_INTERVAL:86400000}" # Number of milliseconds. The current value corresponds to one day
|
||||
edge_events_ttl: "${SQL_TTL_EDGE_EVENTS_TTL:2628000}" # Number of seconds. The current value corresponds to one month
|
||||
alarms:
|
||||
checking_interval: "${SQL_ALARMS_TTL_CHECKING_INTERVAL:7200000}" # Number of milliseconds. The current value corresponds to two hours
|
||||
removal_batch_size: "${SQL_ALARMS_TTL_REMOVAL_BATCH_SIZE:3000}" # To delete outdated alarms not all at once but in batches
|
||||
rpc:
|
||||
enabled: "${SQL_TTL_RPC_ENABLED:true}" # The parameter to specify whether to use TTL (Time To Live) for rpc call records
|
||||
enabled: "${SQL_TTL_RPC_ENABLED:true}" # Enable/disable TTL (Time To Live) for rpc call records
|
||||
checking_interval: "${SQL_RPC_TTL_CHECKING_INTERVAL:7200000}" # Number of milliseconds. The current value corresponds to two hours
|
||||
audit_logs:
|
||||
enabled: "${SQL_TTL_AUDIT_LOGS_ENABLED:true}" # The parameter to specify whether to use TTL (Time To Live) for audit log records
|
||||
enabled: "${SQL_TTL_AUDIT_LOGS_ENABLED:true}" # Enable/disable TTL (Time To Live) for audit log records
|
||||
ttl: "${SQL_TTL_AUDIT_LOGS_SECS:0}" # Disabled by default. The accuracy of the cleanup depends on the sql.audit_logs.partition_size
|
||||
checking_interval_ms: "${SQL_TTL_AUDIT_LOGS_CHECKING_INTERVAL_MS:86400000}" # Default value - 1 day
|
||||
notifications:
|
||||
enabled: "${SQL_TTL_NOTIFICATIONS_ENABLED:true}" # The parameter to specify whether to use TTL (Time To Live) for notification center records
|
||||
enabled: "${SQL_TTL_NOTIFICATIONS_ENABLED:true}" # Enable/disable TTL (Time To Live) for notification center records
|
||||
ttl: "${SQL_TTL_NOTIFICATIONS_SECS:2592000}" # Default value - 30 days
|
||||
checking_interval_ms: "${SQL_TTL_NOTIFICATIONS_CHECKING_INTERVAL_MS:86400000}" # Default value - 1 day
|
||||
relations:
|
||||
@ -476,7 +476,7 @@ actors:
|
||||
# Actors statistic persistence frequency in milliseconds
|
||||
persist_frequency: "${ACTORS_STATISTICS_PERSIST_FREQUENCY:3600000}"
|
||||
|
||||
# Cache parameters
|
||||
# Cache settings parameters
|
||||
cache:
|
||||
# caffeine or redis
|
||||
type: "${CACHE_TYPE:caffeine}"
|
||||
@ -486,7 +486,7 @@ cache:
|
||||
enabled: "${CACHE_ATTRIBUTES_ENABLED:true}"
|
||||
specs:
|
||||
relations:
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_RELATIONS_TTL:1440}" # Relations cache max size
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_RELATIONS_TTL:1440}" # Relations cache TTL
|
||||
maxSize: "${CACHE_SPECS_RELATIONS_MAX_SIZE:10000}" # 0 means the cache is disabled
|
||||
deviceCredentials:
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_DEVICE_CREDENTIALS_TTL:1440}" # Device credentials cache TTL
|
||||
@ -516,7 +516,7 @@ cache:
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_TENANTS_TTL:1440}" # Tenant cache TTL
|
||||
maxSize: "${CACHE_SPECS_TENANTS_MAX_SIZE:10000}" # 0 means the cache is disabled
|
||||
tenantsExist:
|
||||
# environment variables are intentionally the same as in 'tenants' cache to be equal.
|
||||
# Environment variables are intentionally the same as in 'tenants' cache to be equal.
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_TENANTS_TTL:1440}"
|
||||
maxSize: "${CACHE_SPECS_TENANTS_MAX_SIZE:10000}" # 0 means the cache is disabled
|
||||
deviceProfiles:
|
||||
@ -526,7 +526,7 @@ cache:
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_ASSET_PROFILES_TTL:1440}" # Asset profile cache TTL
|
||||
maxSize: "${CACHE_SPECS_ASSET_PROFILES_MAX_SIZE:10000}" # 0 means the cache is disabled
|
||||
notificationSettings:
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_NOTIFICATION_SETTINGS_TTL:10}" # Noification settings cache TTL
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_NOTIFICATION_SETTINGS_TTL:10}" # Notification settings cache TTL
|
||||
maxSize: "${CACHE_SPECS_NOTIFICATION_SETTINGS_MAX_SIZE:1000}" # 0 means the cache is disabled
|
||||
sentNotifications:
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_SENT_NOTIFICATIONS_TTL:1440}" # Sent notifications cache TTL
|
||||
@ -554,7 +554,7 @@ cache:
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_AUTO_COMMIT_SETTINGS_TTL:1440}" # Autocommit settings cache TTL
|
||||
maxSize: "${CACHE_SPECS_AUTO_COMMIT_SETTINGS_MAX_SIZE:10000}" # 0 means the cache is disabled
|
||||
twoFaVerificationCodes:
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_TWO_FA_VERIFICATION_CODES_TTL:60}" # Two fa carification codes cache TTL
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_TWO_FA_VERIFICATION_CODES_TTL:60}" # Two factor verification codes cache TTL
|
||||
maxSize: "${CACHE_SPECS_TWO_FA_VERIFICATION_CODES_MAX_SIZE:100000}" # 0 means the cache is disabled
|
||||
versionControlTask:
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_VERSION_CONTROL_TASK_TTL:20}" # Version control task cache TTL
|
||||
@ -575,9 +575,9 @@ cache:
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_ALARM_TYPES_TTL:60}" # Alarm types cache TTL
|
||||
maxSize: "${CACHE_SPECS_ALARM_TYPES_MAX_SIZE:10000}" # 0 means the cache is disabled
|
||||
|
||||
# deliberately placed outside the 'specs' group above
|
||||
# Deliberately placed outside the 'specs' group above
|
||||
notificationRules:
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_NOTIFICATION_RULES_TTL:30}" # notification rules cache TTL
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_NOTIFICATION_RULES_TTL:30}" # Notification rules cache TTL
|
||||
maxSize: "${CACHE_SPECS_NOTIFICATION_RULES_MAX_SIZE:1000}" # 0 means the cache is disabled
|
||||
rateLimits:
|
||||
timeToLiveInMinutes: "${CACHE_SPECS_RATE_LIMITS_TTL:120}" # Rate limits cache TTL
|
||||
@ -896,7 +896,7 @@ transport:
|
||||
proxy_enabled: "${MQTT_PROXY_PROTOCOL_ENABLED:false}"
|
||||
# MQTT processing timeout in milliseconds
|
||||
timeout: "${MQTT_TIMEOUT:10000}"
|
||||
msg_queue_size_per_device_limit: "${MQTT_MSG_QUEUE_SIZE_PER_DEVICE_LIMIT:100}" # messages await in the queue before device connected state. This limit works on low level before TenantProfileLimits mechanism
|
||||
msg_queue_size_per_device_limit: "${MQTT_MSG_QUEUE_SIZE_PER_DEVICE_LIMIT:100}" # messages await in the queue before the device connected state. This limit works on the low level before TenantProfileLimits mechanism
|
||||
netty:
|
||||
# Netty leak detector level
|
||||
leak_detector_level: "${NETTY_LEAK_DETECTOR_LVL:DISABLED}"
|
||||
@ -938,7 +938,7 @@ transport:
|
||||
store_file: "${MQTT_SSL_KEY_STORE:mqttserver.jks}"
|
||||
# Password used to access the key store
|
||||
store_password: "${MQTT_SSL_KEY_STORE_PASSWORD:server_ks_password}"
|
||||
# Optional alias of the private key; If not set, the platform will load the first private key from the keystore;
|
||||
# Optional alias of the private key. If not set, the platform will load the first private key from the keystore
|
||||
key_alias: "${MQTT_SSL_KEY_ALIAS:}"
|
||||
# Optional password to access the private key. If not set, the platform will attempt to load the private keys that are not protected with the password;
|
||||
key_password: "${MQTT_SSL_KEY_PASSWORD:server_key_password}"
|
||||
@ -946,7 +946,7 @@ transport:
|
||||
skip_validity_check_for_client_cert: "${MQTT_SSL_SKIP_VALIDITY_CHECK_FOR_CLIENT_CERT:false}"
|
||||
# Local CoAP transport parameters
|
||||
coap:
|
||||
# Enable/disable coap transport protocol.
|
||||
# Enable/disable CoAP transport protocol.
|
||||
enabled: "${COAP_ENABLED:true}"
|
||||
# CoAP bind-address
|
||||
bind_address: "${COAP_BIND_ADDRESS:0.0.0.0}"
|
||||
@ -1002,7 +1002,7 @@ transport:
|
||||
dtls_session_report_timeout: "${TB_COAP_X509_DTLS_SESSION_REPORT_TIMEOUT:1800000}"
|
||||
# Local LwM2M transport parameters
|
||||
lwm2m:
|
||||
# Enable/disable lvm2m transport protocol.
|
||||
# Enable/disable LwM2M transport protocol.
|
||||
enabled: "${LWM2M_ENABLED:true}"
|
||||
dtls:
|
||||
# RFC7925_RETRANSMISSION_TIMEOUT_IN_MILLISECONDS = 9000
|
||||
@ -1050,7 +1050,7 @@ transport:
|
||||
bootstrap:
|
||||
# Enable/disable Bootstrap Server
|
||||
enabled: "${LWM2M_ENABLED_BS:true}"
|
||||
# Default value in Lwm2mClient after start in mode Bootstrap for the object : name "LWM2M Security" field: "Short Server ID" (deviceProfile: Bootstrap.BOOTSTRAP SERVER.Short ID)
|
||||
# Default value in LwM2M client after start in mode Bootstrap for the object : name "LWM2M Security" field: "Short Server ID" (deviceProfile: Bootstrap.BOOTSTRAP SERVER.Short ID)
|
||||
id: "${LWM2M_SERVER_ID_BS:111}"
|
||||
# LwM2M bootstrap server bind address. Bind to all interfaces by default
|
||||
bind_address: "${LWM2M_BS_BIND_ADDRESS:0.0.0.0}"
|
||||
@ -1071,7 +1071,7 @@ transport:
|
||||
pem:
|
||||
# Path to the server certificate file (holds server certificate or certificate chain, may include server private key)
|
||||
cert_file: "${LWM2M_BS_PEM_CERT:lwm2mserver.pem}"
|
||||
# Path to the server certificate private key file. Optional by default. Required if the private key is not present in server certificate file;
|
||||
# Path to the server certificate private key file. Optional by default. Required if the private key is not present in server certificate file
|
||||
key_file: "${LWM2M_BS_PEM_KEY:lwm2mserver_key.pem}"
|
||||
# Server certificate private key password (optional)
|
||||
key_password: "${LWM2M_BS_PEM_KEY_PASSWORD:server_key_password}"
|
||||
@ -1229,7 +1229,7 @@ edges:
|
||||
sleep_between_batches: "${EDGES_SLEEP_BETWEEN_BATCHES:10000}"
|
||||
# Number of threads that are used to check DB for edge events
|
||||
scheduler_pool_size: "${EDGES_SCHEDULER_POOL_SIZE:1}"
|
||||
# Number of threads that used to send downlink messages to edge over gRPC
|
||||
# Number of threads that are used to send downlink messages to edge over gRPC
|
||||
send_scheduler_pool_size: "${EDGES_SEND_SCHEDULER_POOL_SIZE:1}"
|
||||
# Number of threads that are used to convert edge events from DB into downlink messages and send them for delivery
|
||||
grpc_callback_thread_pool_size: "${EDGES_GRPC_CALLBACK_POOL_SIZE:1}"
|
||||
@ -1271,10 +1271,10 @@ queue:
|
||||
type: "${TB_QUEUE_TYPE:in-memory}" # in-memory or kafka (Apache Kafka) or aws-sqs (AWS SQS) or pubsub (PubSub) or service-bus (Azure Service Bus) or rabbitmq (RabbitMQ)
|
||||
in_memory:
|
||||
stats:
|
||||
# For debug lvl
|
||||
# For debug level
|
||||
print-interval-ms: "${TB_QUEUE_IN_MEMORY_STATS_PRINT_INTERVAL_MS:60000}"
|
||||
kafka:
|
||||
# Kafka Bootstrap Servers
|
||||
# Kafka Bootstrap nodes in "host:port" format
|
||||
bootstrap.servers: "${TB_KAFKA_SERVERS:localhost:9092}"
|
||||
ssl:
|
||||
# Enable/Disable SSL Kafka communication
|
||||
@ -1307,9 +1307,9 @@ queue:
|
||||
buffer.memory: "${TB_BUFFER_MEMORY:33554432}"
|
||||
# The multiple copies of data over the multiple brokers of Kafka
|
||||
replication_factor: "${TB_QUEUE_KAFKA_REPLICATION_FACTOR:1}"
|
||||
# The maximum delay between invocations of poll() when using consumer group management. This places an upper bound on the amount of time that the consumer can be idle before fetching more records
|
||||
# The maximum delay between invocations of poll() method when using consumer group management. This places an upper bound on the amount of time that the consumer can be idle before fetching more records
|
||||
max_poll_interval_ms: "${TB_QUEUE_KAFKA_MAX_POLL_INTERVAL_MS:300000}"
|
||||
# The maximum number of records returned in a single call to poll()
|
||||
# The maximum number of records returned in a single call of poll() method
|
||||
max_poll_records: "${TB_QUEUE_KAFKA_MAX_POLL_RECORDS:8192}"
|
||||
# The maximum amount of data per-partition the server will return. Records are fetched in batches by the consumer
|
||||
max_partition_fetch_bytes: "${TB_QUEUE_KAFKA_MAX_PARTITION_FETCH_BYTES:16777216}"
|
||||
@ -1371,7 +1371,7 @@ queue:
|
||||
enabled: "${TB_QUEUE_KAFKA_CONSUMER_STATS_ENABLED:true}"
|
||||
# Statistics printing interval for Kafka's consumer-groups stats
|
||||
print-interval-ms: "${TB_QUEUE_KAFKA_CONSUMER_STATS_MIN_PRINT_INTERVAL_MS:60000}"
|
||||
# Time to wait for the stats-loading requests to Kafka to finis
|
||||
# Time to wait for the stats-loading requests to Kafka to finish
|
||||
kafka-response-timeout-ms: "${TB_QUEUE_KAFKA_CONSUMER_STATS_RESPONSE_TIMEOUT_MS:1000}"
|
||||
aws_sqs:
|
||||
# Use the default credentials provider for AWS SQS
|
||||
@ -1399,7 +1399,6 @@ queue:
|
||||
ota-updates: "${TB_QUEUE_AWS_SQS_OTA_QUEUE_PROPERTIES:VisibilityTimeout:30;MaximumMessageSize:262144;MessageRetentionPeriod:604800}"
|
||||
# VisibilityTimeout in seconds;MaximumMessageSize in bytes;MessageRetentionPeriod in seconds
|
||||
version-control: "${TB_QUEUE_AWS_SQS_VC_QUEUE_PROPERTIES:VisibilityTimeout:30;MaximumMessageSize:262144;MessageRetentionPeriod:604800}"
|
||||
# VisibilityTimeout in seconds;MaximumMessageSize in bytes;MessageRetentionPeriod in seconds
|
||||
pubsub:
|
||||
# Project ID from Google Cloud
|
||||
project_id: "${TB_QUEUE_PUBSUB_PROJECT_ID:YOUR_PROJECT_ID}"
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user