Monitorowanie ClickHouse

ClickHouse jest to system zarządzania bazami danych zorientowanym na otwarcie źródła. Instana może automatycznie wykrywać i monitorować procesy serwera ClickHouse .

Czujnik ClickHouse jest automatycznie wdrażany i instalowany po zainstalowaniu agenta Instana.

Czujnik (Gromadzenie Danych)

Konfiguracja śledzona

Agent Instana automatycznie odnajduje plik konfiguracyjny ClickHouse (config.xml), w jego domyślnym położeniu /etc/clickhouse-server/config.xml lub przez sprawdzenie argumentu --config-file , który został przekazany podczas uruchamiania procesu clickhouse-server . Jednak obecnie agent nie obsługuje (to znaczy nie jest automatycznie analizowany) nadpisań ustawień określonych w plikach konfiguracyjnych pomocniczych w katalogach conf.d/config.d obok głównego pliku konfiguracyjnego (patrz sekcja Pliki konfiguracyjne w dokumentacji ClickHouse ). Konfiguracja ZooKeeper nie jest obecnie również brana pod uwagę.

Następujące wartości konfiguracyjne są śledzone automatycznie, analizując plik konfiguracyjny ClickHouse .

  • http_port
  • tcp_port
  • https_port
  • tcp_ssl_port
  • version
  • log
  • error_log
  • interserver_http_port
  • listen_hosts
  • max_connections
  • keep_alive_timeout
  • max_concurrent_queries
  • uncompressed_cache_size
  • mark_cache_size
  • path
  • tmp_path
  • user_config_file_name
  • default_profile
  • default_database
  • timezone
  • umask
  • builtin_dictionaries_reload_interval
  • max_session_timeout
  • default_session_timeout

Metryki

Gromadzone są następujące wielkości mierzone:

  • Merge
  • ReplicatedFetch
  • ReplicatedSend
  • ReplicatedChecks
  • BackgroundPoolTask
  • DiskSpaceReservedForMerge
  • DistributedSend
  • QueryPreempted
  • TCPConnection
  • HTTPConnection
  • InterserverConnection
  • OpenFileForRead
  • OpenFileForWrite
  • Read
  • Write
  • SendExternalTables
  • QueryThread
  • ReadonlyReplica
  • LeaderReplica
  • MemoryTracking
  • MemoryTrackingInBackgroundProcessingPool
  • MemoryTrackingForMerges
  • LeaderElection
  • EphemeralNode
  • ZooKeeperWatch
  • DelayedInserts
  • ContextLockWait
  • StorageBufferRows
  • StorageBufferBytes
  • DictCacheRequests
  • Revision
  • RWLockWaitingReaders
  • RWLockWaitingWriters
  • RWLockActiveReaders
  • RWLockActiveWriters

Konfiguracja

Agent Instana automatycznie odnajduje plik konfiguracyjny ClickHouse (config.xml), jak opisano powyżej. Agent może określić większość wartości konfiguracyjnych, które musi nawiązać połączenie z programem ClickHouse , analizując ten plik konfiguracyjny.

Agent Instana uzyskuje dostęp do ClickHouse za pośrednictwem swojego interfejsu HTTP. W przypadku instalacji typu ClickHouse wanilii interfejs ten jest dostępny bez referencji. W tym przypadku czujnik ClickHouse na Instanie nie wymaga żadnej specjalnej konfiguracji.

Jeśli z drugiej strony skonfigurowano dostęp HTTP ClickHouse do żądania informacji autoryzacyjnych, należy podać informacje autoryzacyjne dla agenta Instana. Można to zrobić, konfigurując je w pliku konfiguracyjnym agenta <agent_install_dir>/etc/instana/configuration.yaml.

Poniżej przedstawiono wszystkie możliwe wartości konfiguracyjne dla monitorowania ClickHouse :

com.instana.plugin.clickhouse:
  enabled: false
  user: admin
  password: admin
  protocol: http
  host: localhost
  httpPort: 8123
  tracingEnabled: false
  profilingEnabled: false
  • enabled: zmienna włącza lub wyłącza czujnik dla monitorowania ClickHouse . Wpisz true , aby włączyć czujnik lub false , aby go wyłączyć.
  • user: nazwa użytkownika w celu uzyskania dostępu do interfejsu HTTP ClickHouse,
  • password: hasło służące do uzyskiwania dostępu do interfejsu HTTP ClickHouse,
  • protocol: 'http' lub 'https',
  • host: nazwa hosta lub adres IP serwera ClickHouse
  • httpPort: port serwera ClickHouse
  • tracingEnabled: Zmienna włącza lub wyłącza śledzenie. Wpisz true , aby włączyć śledzenie dla gromadzenia pomiarów śledzenia lub false , aby je wyłączyć.
  • profilingEnabled: zmienna włącza lub wyłącza profilowanie. Wpisz true , aby włączyć profilowanie danych profilu lub false , aby je wyłączyć.

Wartość konfiguracyjna dla httpPort musi być liczbą całkowitą, w przeciwnym razie zostanie zignorowana, to znaczy, jeśli nie można jej przeanalizować do numeru, zostanie użyty standardowy port.