Files
Raj Kamal SinghandGitHub 5e4c9d8380 Feat: clickhouse query logs receiver (#316)
* feat: get signozclickhousesystemlogsreceiver started

* chore: put together receiver scaffolding for clickhousesystemtablesreceiver

* chore: add clickhousesystemstablereceiver to list of available otel collector receivers

* feat: add impl for unixTsNowAtClickhouse

* feat: get query_log querying logic started

* feat: flesh out query_log scraping loop

* feat: finish up with e2e tracer for query log receiver

* chore: add example config for clickhousesystemtablesreceiver

* chore: get receiver_test started

* chore: refactor clickhouse calls behind an interface for easier mocking in tests

* chore: flesh out receiver happy path test

* chore: wrap up receiver lifecycle test

* chore: add test for receiver start and shutdown

* chore: add config validation tests

* chore: some cleanup

* chore: hook log emitted telemetry on receiver

* chore: some more cleanup

* chore: some more cleanup

* chore: some more cleanup

* chore: some more cleanup

* chore: some more cleanup

* chore: some more cleanup

* chore: some more cleanup

* chore: some more cleanup

* chore: address some review feedback

* chore: address some more review feedback

* feat: add support for specifying a cluster name when scraping clustered deployments

* chore: some more cleanup
2024-04-25 09:55:36 +05:30

26 lines
426 B
Go

package clickhousesystemtablesreceiver
import (
"context"
"github.com/ClickHouse/clickhouse-go/v2"
)
func newClickhouseClient(ctx context.Context, dsn string) (clickhouse.Conn, error) {
options, err := clickhouse.ParseDSN(dsn)
if err != nil {
return nil, err
}
db, err := clickhouse.Open(options)
if err != nil {
return nil, err
}
if err := db.Ping(ctx); err != nil {
return nil, err
}
return db, nil
}