Other Configuration

Other Configuration #

System Configuration #

System configuration is used to set the configurations of INFINI Gateway.

NameTypeDescription
path.datastringData directory, which is data by default.
path.logsstringLog directory, which is log by default.
path.configsstringConfiguration directory, which is config by default.
log.levelstringLog level, which is info by default.
log.debugboolWhether to enable the debugging mode, which is false by default. After the debugging mode is enabled, if an exception occurs, the program exits directly and prints the complete stack, which is only used for debugging and locating faults. Do not enable it in the production environment because data may be lost.
log.disable_file_outputboolWhether to disable the local log file output, which is set to false by default. Enable this parameter if local log output is not required in the container environment.
allow_multi_instanceboolWhether to start multiple gateway instances on a single machine, which is set to false by default.
skip_instance_detectboolWhether to skip the detect of running instances, which is set to false by default
max_num_of_instancesintMaximum number of gateway instances, which is set to 5 by default.
configs.auto_reloadboolWhether dynamic loading configured in path.configs is supported

Templated Configuration #

Example:

configs.template:
  - name: "es_gw1"
    path: ./sample-configs/config_template.tpl
    variable:
      name: "es_gw1"
      binding_host: "0.0.0.0:8000"
      tls_on_entry: true
      elasticsearch_endpoint: "http://localhost:9200"
NameTypeDescription
configs.templatearrayConfigurations
configs.template[].namestringname of the config
configs.template[].pathstringpath to the template file
configs.template[].variablemapredefine variable value of template, variable used in template: $[[variable_name]]

Configuring the Local Disk Queue #

Example:

disk_queue:
  upload_to_s3: true
  s3:
    server: my_blob_store
    location: cn-beijing-001
    bucket: infini-store
  max_bytes_per_file: 102400
NameTypeDescription
disk_queue.min_msg_sizeintMinimum limit on the bytes of a single message sent to a queue. The default value is 1.
disk_queue.max_msg_sizeintMaximum limit on the bytes of a single message sent to a queue. The default value is 104857600, that is, 100 MB.
disk_queue.sync_every_recordsintNumber of records, after which one disk synchronization is performed. The default value is 1000.
disk_queue.sync_timeout_in_msintInterval for performing one disk synchronization operation. The default value is 1000 ms.
disk_queue.max_bytes_per_fileintMaximum size of a single file in the local disk queue. When the size of a file exceeds this value, a new file is automatically generated. The default value is 104857600, that is, 100 MB.
disk_queue.max_used_bytesintMaximum allowable storage space in the local disk queue.
disk_queue.warning_free_bytesintIdle storage space when the disk usage reaches the alarm threshold. The default value is 10737418240, that is, 10 GB.
disk_queue.reserved_free_bytesintProtection value of the idle storage space of the disk. The disk becomes read-only when this value is reached. The default value is 5368709120, that is, 5 GB.
disk_queue.upload_to_s3boolWhether to upload disk queue files to S3. The default value is false.
disk_queue.s3.asyncboolWhether to asynchronously upload files to S3
disk_queue.s3.serverstringID of the S3 server
disk_queue.s3.locationstringLocation of the S3 server
disk_queue.s3.bucketstringBucket of the S3 server
disk_queue.retention.max_num_of_local_filesintMaximum number of latest files sorted by creation time that can be kept on the local disk after files are uploaded to the S3 server. The default value is 10.
disk_queue.compress.segment.enabledboolWhether to enable compress on segment file. The default value is false.

Configuring the S3 Server #

Example:

s3:
  my_blob_store:
    endpoint: "192.168.3.188:9000"
    access_key: "admin"
    access_secret: "gogoaminio"
NameTypeDescription
s3.[id].endpointstringAddress of the S3 server
s3.[id].access_keystringKey of the S3 server
s3.[id].access_secretstringSecret key of the S3 server
s3.[id].tokenstringToken information about the S3 server
s3.[id].sslboolWhether TLS is enabled on the S3 server
s3.[id].skip_insecure_verifyboolWhether to skip TLS verification