Class StorageModuleElasticsearchConfig


  • public class StorageModuleElasticsearchConfig
    extends org.apache.skywalking.oap.server.library.module.ModuleConfig
    • Constructor Detail

      • StorageModuleElasticsearchConfig

        public StorageModuleElasticsearchConfig()
    • Method Detail

      • getNamespace

        public String getNamespace()
      • getClusterNodes

        public String getClusterNodes()
      • getProtocol

        public String getProtocol()
      • getConnectTimeout

        public int getConnectTimeout()
        Connect timeout of ElasticSearch client.
        Since:
        8.7.0
      • getSocketTimeout

        public int getSocketTimeout()
        Socket timeout of ElasticSearch client.
        Since:
        8.7.0
      • getResponseTimeout

        public int getResponseTimeout()
        Since:
        9.0.0 the response timeout of ElasticSearch client (Armeria under the hood), set to 0 to disable response timeout.
      • getDayStep

        public int getDayStep()
        Since:
        6.4.0, the index of metrics and traces data in minute/hour/month precision are organized in days. ES storage creates new indexes in every day., 7.0.0 dayStep represents how many days a single one index represents. Default is 1, meaning no difference with previous versions. But if there isn't much traffic for single one day, user could set the step larger to reduce the number of indexes, and keep the TTL longer.
      • getIndexReplicasNumber

        public int getIndexReplicasNumber()
      • getIndexShardsNumber

        public int getIndexShardsNumber()
      • getSpecificIndexSettings

        public String getSpecificIndexSettings()
        Since:
        9.3.0, Specify the settings for each index individually. Use JSON format and the index name in the config should exclude the `${SW_NAMESPACE}` e.g. {"metrics-all":{"number_of_shards":"3","number_of_replicas":"2"},"segment":{"number_of_shards":"6","number_of_replicas":"1"}} If configured, this setting has the highest priority and overrides the generic settings.
      • getSuperDatasetDayStep

        public int getSuperDatasetDayStep()
        Since:
        8.2.0, the record day step is for super size dataset record index rolling when the value of it is greater than 0
      • getSuperDatasetIndexReplicasNumber

        public int getSuperDatasetIndexReplicasNumber()
        Since:
        8.2.0, the replicas number is for super size dataset record replicas number
        See Also:
        SuperDataset
      • getSuperDatasetIndexShardsFactor

        public int getSuperDatasetIndexShardsFactor()
      • getIndexRefreshInterval

        public int getIndexRefreshInterval()
      • getIndexTemplateOrder

        public int getIndexTemplateOrder()
        Since:
        8.7.0 The order of index template.
      • getBulkActions

        public int getBulkActions()
        Since:
        8.7.0 This setting affects all traces/logs/metrics/metadata flush policy.
      • getBatchOfBytes

        public int getBatchOfBytes()
      • getFlushInterval

        public int getFlushInterval()
        Period of flush, no matter `bulkActions` reached or not. Unit is second.
      • getConcurrentRequests

        public int getConcurrentRequests()
      • getSecretsManagementFile

        public String getSecretsManagementFile()
        Secrets management file includes the username, password, which are managed by 3rd party tool.
      • getTrustStorePath

        public String getTrustStorePath()
      • getResultWindowMaxSize

        public int getResultWindowMaxSize()
      • getMetadataQueryMaxSize

        public int getMetadataQueryMaxSize()
      • getScrollingBatchSize

        public int getScrollingBatchSize()
        Since:
        9.0.0 The batch size that is used to scroll on the large results, if metadataQueryMaxSize is larger than the maximum result window in ElasticSearch server, this can be used to retrieve all results.
      • getSegmentQueryMaxSize

        public int getSegmentQueryMaxSize()
      • getProfileTaskQueryMaxSize

        public int getProfileTaskQueryMaxSize()
      • getProfileDataQueryBatchSize

        public int getProfileDataQueryBatchSize()
        The batch size that is used to scroll on the large eBPF profiling data result. The profiling data contains full-stack symbol data, which could make ElasticSearch response large content. scrollingBatchSize would not be used in profiling data query.
      • getAdvanced

        public String getAdvanced()
      • getNumHttpClientThread

        public int getNumHttpClientThread()
        The number of threads for the underlying HTTP client to perform socket I/O. If the value is <= 0, the number of available processors will be used.
      • isLogicSharding

        public boolean isLogicSharding()
        If disabled, all metrics would be persistent in one physical index template, to reduce the number of physical indices. If enabled, shard metrics indices into multi-physical indices, one index template per metric/meter aggregation function.
        Since:
        9.2.0
      • isEnableCustomRouting

        public boolean isEnableCustomRouting()
        if enabled, custom routing values will be used, to reduce the number of shards that need to be searched.
      • setNamespace

        public void setNamespace​(String namespace)
      • setClusterNodes

        public void setClusterNodes​(String clusterNodes)
      • setProtocol

        public void setProtocol​(String protocol)
      • setConnectTimeout

        public void setConnectTimeout​(int connectTimeout)
        Connect timeout of ElasticSearch client.
        Since:
        8.7.0
      • setSocketTimeout

        public void setSocketTimeout​(int socketTimeout)
        Socket timeout of ElasticSearch client.
        Since:
        8.7.0
      • setResponseTimeout

        public void setResponseTimeout​(int responseTimeout)
        Since:
        9.0.0 the response timeout of ElasticSearch client (Armeria under the hood), set to 0 to disable response timeout.
      • setDayStep

        public void setDayStep​(int dayStep)
        Since:
        6.4.0, the index of metrics and traces data in minute/hour/month precision are organized in days. ES storage creates new indexes in every day., 7.0.0 dayStep represents how many days a single one index represents. Default is 1, meaning no difference with previous versions. But if there isn't much traffic for single one day, user could set the step larger to reduce the number of indexes, and keep the TTL longer.
      • setIndexReplicasNumber

        public void setIndexReplicasNumber​(int indexReplicasNumber)
      • setIndexShardsNumber

        public void setIndexShardsNumber​(int indexShardsNumber)
      • setSpecificIndexSettings

        public void setSpecificIndexSettings​(String specificIndexSettings)
        Since:
        9.3.0, Specify the settings for each index individually. Use JSON format and the index name in the config should exclude the `${SW_NAMESPACE}` e.g. {"metrics-all":{"number_of_shards":"3","number_of_replicas":"2"},"segment":{"number_of_shards":"6","number_of_replicas":"1"}} If configured, this setting has the highest priority and overrides the generic settings.
      • setSuperDatasetDayStep

        public void setSuperDatasetDayStep​(int superDatasetDayStep)
        Since:
        8.2.0, the record day step is for super size dataset record index rolling when the value of it is greater than 0
      • setSuperDatasetIndexReplicasNumber

        public void setSuperDatasetIndexReplicasNumber​(int superDatasetIndexReplicasNumber)
        Since:
        8.2.0, the replicas number is for super size dataset record replicas number
        See Also:
        SuperDataset
      • setSuperDatasetIndexShardsFactor

        public void setSuperDatasetIndexShardsFactor​(int superDatasetIndexShardsFactor)
      • setIndexRefreshInterval

        public void setIndexRefreshInterval​(int indexRefreshInterval)
      • setIndexTemplateOrder

        public void setIndexTemplateOrder​(int indexTemplateOrder)
        Since:
        8.7.0 The order of index template.
      • setBulkActions

        public void setBulkActions​(int bulkActions)
        Since:
        8.7.0 This setting affects all traces/logs/metrics/metadata flush policy.
      • setBatchOfBytes

        public void setBatchOfBytes​(int batchOfBytes)
      • setFlushInterval

        public void setFlushInterval​(int flushInterval)
        Period of flush, no matter `bulkActions` reached or not. Unit is second.
      • setConcurrentRequests

        public void setConcurrentRequests​(int concurrentRequests)
      • setSecretsManagementFile

        public void setSecretsManagementFile​(String secretsManagementFile)
        Secrets management file includes the username, password, which are managed by 3rd party tool.
      • setTrustStorePath

        public void setTrustStorePath​(String trustStorePath)
      • setTrustStorePass

        public void setTrustStorePass​(String trustStorePass)
        Since:
        7.0.0 This could be managed inside secretsManagementFile
      • setResultWindowMaxSize

        public void setResultWindowMaxSize​(int resultWindowMaxSize)
      • setMetadataQueryMaxSize

        public void setMetadataQueryMaxSize​(int metadataQueryMaxSize)
      • setScrollingBatchSize

        public void setScrollingBatchSize​(int scrollingBatchSize)
        Since:
        9.0.0 The batch size that is used to scroll on the large results, if metadataQueryMaxSize is larger than the maximum result window in ElasticSearch server, this can be used to retrieve all results.
      • setSegmentQueryMaxSize

        public void setSegmentQueryMaxSize​(int segmentQueryMaxSize)
      • setProfileTaskQueryMaxSize

        public void setProfileTaskQueryMaxSize​(int profileTaskQueryMaxSize)
      • setProfileDataQueryBatchSize

        public void setProfileDataQueryBatchSize​(int profileDataQueryBatchSize)
        The batch size that is used to scroll on the large eBPF profiling data result. The profiling data contains full-stack symbol data, which could make ElasticSearch response large content. scrollingBatchSize would not be used in profiling data query.
      • setAdvanced

        public void setAdvanced​(String advanced)
      • setNumHttpClientThread

        public void setNumHttpClientThread​(int numHttpClientThread)
        The number of threads for the underlying HTTP client to perform socket I/O. If the value is <= 0, the number of available processors will be used.
      • setLogicSharding

        public void setLogicSharding​(boolean logicSharding)
        If disabled, all metrics would be persistent in one physical index template, to reduce the number of physical indices. If enabled, shard metrics indices into multi-physical indices, one index template per metric/meter aggregation function.
        Since:
        9.2.0
      • setEnableCustomRouting

        public void setEnableCustomRouting​(boolean enableCustomRouting)
        if enabled, custom routing values will be used, to reduce the number of shards that need to be searched.