Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

libsacloud/v2からiaas-api-goへ切り替え #64

Merged
merged 2 commits into from
May 17, 2022
Merged
Show file tree
Hide file tree
Changes from all 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
18 changes: 9 additions & 9 deletions collector/auto_backup.go
Original file line number Diff line number Diff line change
Expand Up @@ -24,16 +24,16 @@ import (
"github.com/go-kit/kit/log"
"github.com/go-kit/kit/log/level"
"github.com/prometheus/client_golang/prometheus"
"github.com/sacloud/libsacloud/v2/sacloud"
"github.com/sacloud/sakuracloud_exporter/iaas"
"github.com/sacloud/iaas-api-go"
"github.com/sacloud/sakuracloud_exporter/platform"
)

// AutoBackupCollector collects metrics about all auto_backups.
type AutoBackupCollector struct {
ctx context.Context
logger log.Logger
errors *prometheus.CounterVec
client iaas.AutoBackupClient
client platform.AutoBackupClient

Info *prometheus.Desc

Expand All @@ -43,7 +43,7 @@ type AutoBackupCollector struct {
}

// NewAutoBackupCollector returns a new AutoBackupCollector.
func NewAutoBackupCollector(ctx context.Context, logger log.Logger, errors *prometheus.CounterVec, client iaas.AutoBackupClient) *AutoBackupCollector {
func NewAutoBackupCollector(ctx context.Context, logger log.Logger, errors *prometheus.CounterVec, client platform.AutoBackupClient) *AutoBackupCollector {
errors.WithLabelValues("auto_backup").Add(0)

labels := []string{"id", "name", "disk_id"}
Expand Down Expand Up @@ -101,7 +101,7 @@ func (c *AutoBackupCollector) Collect(ch chan<- prometheus.Metric) {
var wg sync.WaitGroup

for i := range autoBackups {
func(autoBackup *sacloud.AutoBackup) {
func(autoBackup *iaas.AutoBackup) {
ch <- prometheus.MustNewConstMetric(
c.Info,
prometheus.GaugeValue,
Expand All @@ -121,15 +121,15 @@ func (c *AutoBackupCollector) Collect(ch chan<- prometheus.Metric) {
wg.Wait()
}

func (c *AutoBackupCollector) autoBackupLabels(autoBackup *sacloud.AutoBackup) []string {
func (c *AutoBackupCollector) autoBackupLabels(autoBackup *iaas.AutoBackup) []string {
return []string{
autoBackup.ID.String(),
autoBackup.Name,
autoBackup.DiskID.String(),
}
}

func (c *AutoBackupCollector) autoBackupInfoLabels(autoBackup *sacloud.AutoBackup) []string {
func (c *AutoBackupCollector) autoBackupInfoLabels(autoBackup *iaas.AutoBackup) []string {
labels := c.autoBackupLabels(autoBackup)

return append(labels,
Expand All @@ -140,7 +140,7 @@ func (c *AutoBackupCollector) autoBackupInfoLabels(autoBackup *sacloud.AutoBacku
)
}

func (c *AutoBackupCollector) archiveInfoLabels(autoBackup *sacloud.AutoBackup, archive *sacloud.Archive) []string {
func (c *AutoBackupCollector) archiveInfoLabels(autoBackup *iaas.AutoBackup, archive *iaas.Archive) []string {
labels := c.autoBackupLabels(autoBackup)
return append(labels,
archive.ID.String(),
Expand All @@ -150,7 +150,7 @@ func (c *AutoBackupCollector) archiveInfoLabels(autoBackup *sacloud.AutoBackup,
)
}

func (c *AutoBackupCollector) collectBackupMetrics(ch chan<- prometheus.Metric, autoBackup *sacloud.AutoBackup, now time.Time) {
func (c *AutoBackupCollector) collectBackupMetrics(ch chan<- prometheus.Metric, autoBackup *iaas.AutoBackup, now time.Time) {
archives, err := c.client.ListBackups(c.ctx, autoBackup.ZoneName, autoBackup.ID)
if err != nil {
c.errors.WithLabelValues("auto_backup").Add(1)
Expand Down
25 changes: 12 additions & 13 deletions collector/auto_backup_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,25 +21,24 @@ import (
"time"

"github.com/prometheus/client_golang/prometheus"
"github.com/sacloud/libsacloud/v2/sacloud/types"

"github.com/sacloud/libsacloud/v2/sacloud"
"github.com/sacloud/sakuracloud_exporter/iaas"
"github.com/sacloud/iaas-api-go"
"github.com/sacloud/iaas-api-go/types"
"github.com/sacloud/sakuracloud_exporter/platform"
"github.com/stretchr/testify/require"
)

type dummyAutoBackupClient struct {
autoBackup []*sacloud.AutoBackup
autoBackup []*iaas.AutoBackup
findErr error
archives []*sacloud.Archive
archives []*iaas.Archive
listBackupsErr error
}

func (d *dummyAutoBackupClient) Find(ctx context.Context) ([]*sacloud.AutoBackup, error) {
func (d *dummyAutoBackupClient) Find(ctx context.Context) ([]*iaas.AutoBackup, error) {
return d.autoBackup, d.findErr
}

func (d *dummyAutoBackupClient) ListBackups(ctx context.Context, zone string, autoBackupID types.ID) ([]*sacloud.Archive, error) {
func (d *dummyAutoBackupClient) ListBackups(ctx context.Context, zone string, autoBackupID types.ID) ([]*iaas.Archive, error) {
return d.archives, d.listBackupsErr
}

Expand All @@ -62,7 +61,7 @@ func TestAutoBackupCollector_Collect(t *testing.T) {

cases := []struct {
name string
in iaas.AutoBackupClient
in platform.AutoBackupClient
wantLogs []string
wantErrCounter float64
wantMetrics []*collectedMetric
Expand All @@ -84,7 +83,7 @@ func TestAutoBackupCollector_Collect(t *testing.T) {
{
name: "a auto-backup: list archives is failed ",
in: &dummyAutoBackupClient{
autoBackup: []*sacloud.AutoBackup{
autoBackup: []*iaas.AutoBackup{
{
ID: 101,
Name: "AutoBackup",
Expand Down Expand Up @@ -121,7 +120,7 @@ func TestAutoBackupCollector_Collect(t *testing.T) {
{
name: "a auto-backup without archives",
in: &dummyAutoBackupClient{
autoBackup: []*sacloud.AutoBackup{
autoBackup: []*iaas.AutoBackup{
{
ID: 101,
Name: "AutoBackup",
Expand Down Expand Up @@ -171,7 +170,7 @@ func TestAutoBackupCollector_Collect(t *testing.T) {
{
name: "a auto-backup with archives",
in: &dummyAutoBackupClient{
autoBackup: []*sacloud.AutoBackup{
autoBackup: []*iaas.AutoBackup{
{
ID: 101,
Name: "AutoBackup",
Expand All @@ -186,7 +185,7 @@ func TestAutoBackupCollector_Collect(t *testing.T) {
Description: "desc",
},
},
archives: []*sacloud.Archive{
archives: []*iaas.Archive{
{
ID: 301,
Name: "Archive1",
Expand Down
6 changes: 3 additions & 3 deletions collector/coupon.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,15 @@ import (
"github.com/go-kit/kit/log"
"github.com/go-kit/kit/log/level"
"github.com/prometheus/client_golang/prometheus"
"github.com/sacloud/sakuracloud_exporter/iaas"
"github.com/sacloud/sakuracloud_exporter/platform"
)

// CouponCollector collects metrics about the account.
type CouponCollector struct {
ctx context.Context
logger log.Logger
errors *prometheus.CounterVec
client iaas.CouponClient
client platform.CouponClient

Discount *prometheus.Desc
RemainingDays *prometheus.Desc
Expand All @@ -39,7 +39,7 @@ type CouponCollector struct {
}

// NewCouponCollector returns a new CouponCollector.
func NewCouponCollector(ctx context.Context, logger log.Logger, errors *prometheus.CounterVec, client iaas.CouponClient) *CouponCollector {
func NewCouponCollector(ctx context.Context, logger log.Logger, errors *prometheus.CounterVec, client platform.CouponClient) *CouponCollector {
errors.WithLabelValues("coupon").Add(0)

labels := []string{"id", "member_id", "contract_id"}
Expand Down
12 changes: 6 additions & 6 deletions collector/coupon_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,17 +21,17 @@ import (
"time"

"github.com/prometheus/client_golang/prometheus"
"github.com/sacloud/libsacloud/v2/sacloud"
"github.com/sacloud/sakuracloud_exporter/iaas"
"github.com/sacloud/iaas-api-go"
"github.com/sacloud/sakuracloud_exporter/platform"
"github.com/stretchr/testify/require"
)

type dummyCouponClient struct {
coupons []*sacloud.Coupon
coupons []*iaas.Coupon
err error
}

func (d *dummyCouponClient) Find(ctx context.Context) ([]*sacloud.Coupon, error) {
func (d *dummyCouponClient) Find(ctx context.Context) ([]*iaas.Coupon, error) {
return d.coupons, d.err
}

Expand All @@ -55,7 +55,7 @@ func TestCouponCollector_Collect(t *testing.T) {

cases := []struct {
name string
in iaas.CouponClient
in platform.CouponClient
wantLogs []string
wantErrCounter float64
wantMetrics []*collectedMetric
Expand All @@ -77,7 +77,7 @@ func TestCouponCollector_Collect(t *testing.T) {
{
name: "a coupon",
in: &dummyCouponClient{
coupons: []*sacloud.Coupon{
coupons: []*iaas.Coupon{
{
ID: 101,
MemberID: "memberID",
Expand Down
24 changes: 12 additions & 12 deletions collector/database.go
Original file line number Diff line number Diff line change
Expand Up @@ -23,16 +23,16 @@ import (
"github.com/go-kit/kit/log"
"github.com/go-kit/kit/log/level"
"github.com/prometheus/client_golang/prometheus"
"github.com/sacloud/libsacloud/v2/sacloud/types"
"github.com/sacloud/sakuracloud_exporter/iaas"
"github.com/sacloud/iaas-api-go/types"
"github.com/sacloud/sakuracloud_exporter/platform"
)

// DatabaseCollector collects metrics about all databases.
type DatabaseCollector struct {
ctx context.Context
logger log.Logger
errors *prometheus.CounterVec
client iaas.DatabaseClient
client platform.DatabaseClient

Up *prometheus.Desc
DatabaseInfo *prometheus.Desc
Expand All @@ -53,7 +53,7 @@ type DatabaseCollector struct {
}

// NewDatabaseCollector returns a new DatabaseCollector.
func NewDatabaseCollector(ctx context.Context, logger log.Logger, errors *prometheus.CounterVec, client iaas.DatabaseClient) *DatabaseCollector {
func NewDatabaseCollector(ctx context.Context, logger log.Logger, errors *prometheus.CounterVec, client platform.DatabaseClient) *DatabaseCollector {
errors.WithLabelValues("database").Add(0)

databaseLabels := []string{"id", "name", "zone"}
Expand Down Expand Up @@ -188,7 +188,7 @@ func (c *DatabaseCollector) Collect(ch chan<- prometheus.Metric) {
wg.Add(len(databases))

for i := range databases {
func(database *iaas.Database) {
func(database *platform.Database) {
defer wg.Done()

databaseLabels := c.databaseLabels(database)
Expand Down Expand Up @@ -253,7 +253,7 @@ func (c *DatabaseCollector) Collect(ch chan<- prometheus.Metric) {
wg.Wait()
}

func (c *DatabaseCollector) databaseLabels(database *iaas.Database) []string {
func (c *DatabaseCollector) databaseLabels(database *platform.Database) []string {
return []string{
database.ID.String(),
database.Name,
Expand All @@ -270,7 +270,7 @@ var databasePlanLabels = map[types.ID]string{
types.DatabasePlans.DB1TB: "1TB",
}

func (c *DatabaseCollector) databaseInfoLabels(database *iaas.Database) []string {
func (c *DatabaseCollector) databaseInfoLabels(database *platform.Database) []string {
labels := c.databaseLabels(database)

instanceHost := "-"
Expand Down Expand Up @@ -303,7 +303,7 @@ func (c *DatabaseCollector) databaseInfoLabels(database *iaas.Database) []string
)
}

func (c *DatabaseCollector) nicInfoLabels(database *iaas.Database) []string {
func (c *DatabaseCollector) nicInfoLabels(database *platform.Database) []string {
labels := c.databaseLabels(database)

var upstreamType, upstreamID, upstreamName string
Expand Down Expand Up @@ -334,7 +334,7 @@ func (c *DatabaseCollector) nicInfoLabels(database *iaas.Database) []string {
)
}

func (c *DatabaseCollector) collectCPUTime(ch chan<- prometheus.Metric, database *iaas.Database, now time.Time) {
func (c *DatabaseCollector) collectCPUTime(ch chan<- prometheus.Metric, database *platform.Database, now time.Time) {
values, err := c.client.MonitorCPU(c.ctx, database.ZoneName, database.ID, now)
if err != nil {
c.errors.WithLabelValues("database").Add(1)
Expand All @@ -358,7 +358,7 @@ func (c *DatabaseCollector) collectCPUTime(ch chan<- prometheus.Metric, database
ch <- prometheus.NewMetricWithTimestamp(values.Time, m)
}

func (c *DatabaseCollector) collectDiskMetrics(ch chan<- prometheus.Metric, database *iaas.Database, now time.Time) {
func (c *DatabaseCollector) collectDiskMetrics(ch chan<- prometheus.Metric, database *platform.Database, now time.Time) {
values, err := c.client.MonitorDisk(c.ctx, database.ZoneName, database.ID, now)
if err != nil {
c.errors.WithLabelValues("database").Add(1)
Expand Down Expand Up @@ -388,7 +388,7 @@ func (c *DatabaseCollector) collectDiskMetrics(ch chan<- prometheus.Metric, data
ch <- prometheus.NewMetricWithTimestamp(values.Time, m)
}

func (c *DatabaseCollector) collectNICMetrics(ch chan<- prometheus.Metric, database *iaas.Database, now time.Time) {
func (c *DatabaseCollector) collectNICMetrics(ch chan<- prometheus.Metric, database *platform.Database, now time.Time) {
values, err := c.client.MonitorNIC(c.ctx, database.ZoneName, database.ID, now)
if err != nil {
c.errors.WithLabelValues("database").Add(1)
Expand Down Expand Up @@ -419,7 +419,7 @@ func (c *DatabaseCollector) collectNICMetrics(ch chan<- prometheus.Metric, datab
ch <- prometheus.NewMetricWithTimestamp(values.Time, m)
}

func (c *DatabaseCollector) collectDatabaseMetrics(ch chan<- prometheus.Metric, database *iaas.Database, now time.Time) {
func (c *DatabaseCollector) collectDatabaseMetrics(ch chan<- prometheus.Metric, database *platform.Database, now time.Time) {
values, err := c.client.MonitorDatabase(c.ctx, database.ZoneName, database.ID, now)
if err != nil {
c.errors.WithLabelValues("database").Add(1)
Expand Down
Loading