func NewNginxStatsCollector()

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
}