# Copyright 2024-2025 T. Repasi . # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # The cql-metrics-collector is connecting to Apache Cassandra using the # java-driver of the project. To configure this connection change settings # within below section. Do not change settings not listed here, refer to # src/main/resources/application.conf for more details. datastax-java-driver { advanced { # If the Cassandra cluster is configured to accept and/or require # encrypted client connections, enable the below section and setup # a truststore using the command: # keytool -import -alias CAroot -file ca.crt -keystore /etc/cql-metrics-collector/truststore.jks # where ca.crt contains the certificate to be trusted when connecting # to Cassandra. // ssl-engine-factory { // class = DefaultSslEngineFactory // truststore-path = /etc/cql-metrics-collector/truststore.jks // truststore-password = changeit // } # If user authentication is needed when connecting the Cassandra cluster # uncomment and setup the below section accordingly. Note, that the user # you set up here needs to be allowed to log in to Cassandra and have # select permission on keyspaces system, system_schema, # system_virtual_schema and system_views. // auth-provider { // class = PlainTextAuthProvider // username = monitor // password = secret // } } } # Configuration section of collector features takes place in the below section. cql-metrics-collector { # Cassandra node metrics should be collected from. This can be set by IP # address and port, or by hostname and port. However, if you want to connect # to Cassandra encrypted, the hostname might be set matching to the subject # or one of the SANs of the certificate the Cassandra node is using. # # If not set, the collector will try to connect to the local Cassandra node # on port 9042 and by obtaining the local hostname using Java API # java.net.Inet4Address.getLocalHost().getCanonicalHostName(). // node = "127.0.0.1:9042" # Query executor is a thread pool executing the CQL queries against Cassandra. # Set this to the maximum concurrent queries allowed to be executed on the # local Cassandra node. // queryExecutor.corePoolSize = 5 # Configuration change doesn't need a restart of the service, configuration # is reloaded on the interval set here. Setting the interval to 0 (zero) will # disable the configuration reload. // config-reload-interval = 5 minutes # Whether to collect table bound metrics of system tables. If disabled, only # metrics of user defined tables will be collected and exported. // includeSystemTables = true # Default interval the collectors are updating the list of acquired metrics. // collector-update-interval = 5 minutes # Default update interval of acquired metrics. // metrics-update-interval = 60 seconds }