in opentelemetry_collector/receiver/nginxreceiver/nginx_stats_collector.go [54:74]
func NewNginxStatsCollector(interval time.Duration, statsURL string, logger *zap.Logger, consumer consumer.Metrics) (*NginxStatsCollector, error) {
if interval <= 0 {
return nil, errors.New("ExportInterval must be greater than 0")
}
if _, err := url.ParseRequestURI(statsURL); err != nil {
return nil, fmt.Errorf("StatsURL %s is not valid: %v", statsURL, err)
}
collector := &NginxStatsCollector{
consumer: consumer,
now: time.Now,
done: make(chan struct{}),
logger: logger,
exportInterval: interval,
statsURL: statsURL,
getStatus: http.Get,
}
return collector, nil
}