@@ -101,7 +101,7 @@ func (r *Reaper) Reap(ctx context.Context) {
101101 ctx = log .WithLogger (ctx , srcL )
102102
103103 if monitoredSource .Connect (ctx , r .Sources ) != nil {
104- r .WriteInstanceDown (monitoredSource )
104+ r .WriteInstanceDown (monitoredSource . Name )
105105 srcL .Warning ("could not init connection, retrying on next iteration" )
106106 continue
107107 }
@@ -405,6 +405,7 @@ func (r *Reaper) LoadSources(ctx context.Context) (err error) {
405405 return err
406406 }
407407 srcs = slices .DeleteFunc (srcs , func (s sources.Source ) bool {
408+ // filter out disabled sources and sources with group not in the list of groups to monitor
408409 return ! s .IsEnabled || len (r .Sources .Groups ) > 0 && ! slices .Contains (r .Sources .Groups , s .Group )
409410 })
410411 newSrcs , err = srcs .ResolveDatabases ()
@@ -417,7 +418,7 @@ func (r *Reaper) LoadSources(ctx context.Context) (err error) {
417418 if ! slices .ContainsFunc (newSrcs , func (sc * sources.SourceConn ) bool {
418419 return sc .Name == s .Name || strings .HasPrefix (sc .Name , s .Name + "_" )
419420 }) {
420- r .WriteInstanceDown (sources . NewSourceConn ( s ) )
421+ r .WriteInstanceDown (s . Name )
421422 }
422423 }
423424 }
@@ -443,9 +444,9 @@ func (r *Reaper) LoadSources(ctx context.Context) (err error) {
443444}
444445
445446// WriteInstanceDown writes instance_up = 0 metric to sinks for the given source
446- func (r * Reaper ) WriteInstanceDown (md * sources. SourceConn ) {
447+ func (r * Reaper ) WriteInstanceDown (name string ) {
447448 r .measurementCh <- metrics.MeasurementEnvelope {
448- DBName : md . Name ,
449+ DBName : name ,
449450 MetricName : specialMetricInstanceUp ,
450451 Data : metrics.Measurements {metrics.Measurement {
451452 metrics .EpochColumnName : time .Now ().UnixNano (),
0 commit comments