Skip to content
Merged
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions README-en.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,7 @@ record_cert_info{

## Supported DNS service providers

- [x] Custom Records
- [x] Tencent DnsPod
- [x] Aliyun Dns
- [x] Godaddy
Expand Down
1 change: 1 addition & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,7 @@ record_cert_info{

## 已支持 DNS 服务商

- [x] Custom Records
- [x] Tencent DnsPod
- [x] Aliyun Dns
- [x] Godaddy
Expand Down
26 changes: 14 additions & 12 deletions pkg/export/export_gauge.go
Original file line number Diff line number Diff line change
Expand Up @@ -161,17 +161,19 @@ func (c *Metrics) Collect(ch chan<- prometheus.Metric) {
}

// get custom record cert info list from cache
recordCertInfoCacheKey := public.RecordCertInfo + "_" + public.CustomRecords
var recordCerts []provider.RecordCert
recordCertInfoCacheValue, err := public.CertCache.Get(recordCertInfoCacheKey)
if err != nil {
logger.Error(fmt.Sprintf("[ %s ] get record list failed: %v", recordCertInfoCacheKey, err))
}
err = json.Unmarshal(recordCertInfoCacheValue, &recordCerts)
if err != nil {
logger.Error(fmt.Sprintf("[ %s ] json.Unmarshal error: %v", recordCertInfoCacheKey, err))
}
for _, v := range recordCerts {
ch <- prometheus.MustNewConstMetric(c.metrics[public.RecordCertInfo], prometheus.GaugeValue, float64(v.DaysUntilExpiry), v.CloudProvider, v.CloudName, v.DomainName, v.RecordID, v.FullRecord, v.SubjectCommonName, v.SubjectOrganization, v.SubjectOrganizationalUnit, v.IssuerCommonName, v.IssuerOrganization, v.IssuerOrganizationalUnit, v.CreatedDate, v.ExpiryDate, fmt.Sprintf("%t", v.CertMatched), v.ErrorMsg)
if len(public.Config.CustomRecords) != 0 {
recordCertInfoCacheKey := public.RecordCertInfo + "_" + public.CustomRecords
var recordCerts []provider.RecordCert
recordCertInfoCacheValue, err := public.CertCache.Get(recordCertInfoCacheKey)
if err != nil {
logger.Error(fmt.Sprintf("[ %s ] get record list failed: %v", recordCertInfoCacheKey, err))
}
err = json.Unmarshal(recordCertInfoCacheValue, &recordCerts)
if err != nil {
logger.Error(fmt.Sprintf("[ %s ] json.Unmarshal error: %v", recordCertInfoCacheKey, err))
}
for _, v := range recordCerts {
ch <- prometheus.MustNewConstMetric(c.metrics[public.RecordCertInfo], prometheus.GaugeValue, float64(v.DaysUntilExpiry), v.CloudProvider, v.CloudName, v.DomainName, v.RecordID, v.FullRecord, v.SubjectCommonName, v.SubjectOrganization, v.SubjectOrganizationalUnit, v.IssuerCommonName, v.IssuerOrganization, v.IssuerOrganizationalUnit, v.CreatedDate, v.ExpiryDate, fmt.Sprintf("%t", v.CertMatched), v.ErrorMsg)
}
}
}
Loading