Skip to content

Commit

Permalink
chore: adding historgram for all endpoint
Browse files Browse the repository at this point in the history
  • Loading branch information
rulanugrh committed Mar 19, 2024
1 parent 07e2cde commit 47a2941
Show file tree
Hide file tree
Showing 6 changed files with 38 additions and 9 deletions.
10 changes: 10 additions & 0 deletions internal/service/admin.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package service

import (
"time"

"github.com/prometheus/client_golang/prometheus"
"github.com/rulanugrh/larissa/internal/entity/domain"
"github.com/rulanugrh/larissa/internal/entity/web"
Expand Down Expand Up @@ -50,6 +52,7 @@ func(a *admin) CreatePenyakit(req domain.Penyakit) (*web.PenyakitCreated, error)
}

a.gauge.Penyakit.Inc()
a.gauge.PenyakitHistory.With(prometheus.Labels{"code": "200", "method": "POST", "type": "create"}).Observe(time.Since(time.Now()).Seconds())
a.gauge.PenyakitUpgrade.With(prometheus.Labels{"type": "create"}).Inc()
return &response, nil
}
Expand All @@ -70,6 +73,7 @@ func(a *admin) CreateObat(req domain.Obat) (*web.ObatCreated, error) {
}

a.gauge.Obat.Inc()
a.gauge.ObatHistory.With(prometheus.Labels{"code": "200", "method": "POST", "type": "create"}).Observe(time.Since(time.Now()).Seconds())
a.gauge.ObatUpgrade.With(prometheus.Labels{"type": "create"}).Inc()
return &response, nil
}
Expand All @@ -88,6 +92,8 @@ func(a *admin) UpdateObat(id uint, req domain.Obat) (*web.ObatUpdated, error) {
QtyAvailable: data.QtyAvailable,
}


a.gauge.ObatHistory.With(prometheus.Labels{"code": "200", "method": "PUT", "type": "update"}).Observe(time.Since(time.Now()).Seconds())
a.gauge.ObatUpgrade.With(prometheus.Labels{"type": "update"}).Inc()
return &response, nil
}
Expand All @@ -98,6 +104,7 @@ func(a *admin) DeleteObat(id uint) error {
return util.Errors(err)
}

a.gauge.ObatHistory.With(prometheus.Labels{"code": "204", "method": "DELETE", "type": "delete"}).Observe(time.Since(time.Now()).Seconds())
a.gauge.ObatUpgrade.With(prometheus.Labels{"type": "delete"}).Inc()
return nil
}
Expand All @@ -108,6 +115,7 @@ func(a *admin) DeletePenyakit(id uint) error {
return util.Errors(err)
}

a.gauge.PenyakitHistory.With(prometheus.Labels{"code": "204", "method": "DELETE", "type": "delete"}).Observe(time.Since(time.Now()).Seconds())
a.gauge.PenyakitUpgrade.With(prometheus.Labels{"type": "delete"}).Inc()
return nil
}
Expand All @@ -130,6 +138,7 @@ func(a *admin) Reported() (*[]web.Reported, error) {
response = append(response, result)
}

a.gauge.KunjunganHistory.With(prometheus.Labels{"code": "200", "method": "GET", "type": "get"}).Observe(time.Since(time.Now()).Seconds())
a.gauge.Kunjungan.Set(float64(len(*data)))
return &response, nil
}
Expand All @@ -155,6 +164,7 @@ func (a *admin) ListAllUser() (*[]web.User, error) {
response = append(response, result)
}

a.gauge.UserHistory.With(prometheus.Labels{"code": "200", "method": "GET", "type": "get"}).Observe(time.Since(time.Now()).Seconds())
a.gauge.User.Set(float64(len(*data)))
return &response, nil
}
3 changes: 3 additions & 0 deletions internal/service/kunjungan.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package service

import (
"time"

"github.com/prometheus/client_golang/prometheus"
"github.com/rulanugrh/larissa/internal/entity/domain"
"github.com/rulanugrh/larissa/internal/entity/web"
Expand Down Expand Up @@ -83,6 +85,7 @@ func(k *kunjungan) Create(req domain.Kunjungan) (*web.Kunjungan, error) {


k.gauge.Kunjungan.Inc()
k.gauge.KunjunganHistory.With(prometheus.Labels{"code": "200", "method": "POST", "type": "create"}).Observe(time.Since(time.Now()).Seconds())
k.gauge.KunjunganUpgrade.With(prometheus.Labels{"type": "create"}).Inc()
return &response, nil
}
Expand Down
4 changes: 4 additions & 0 deletions internal/service/obat.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
package service

import (
"time"

"github.com/prometheus/client_golang/prometheus"
"github.com/rulanugrh/larissa/internal/entity/web"
"github.com/rulanugrh/larissa/internal/repository"
"github.com/rulanugrh/larissa/internal/util"
Expand Down Expand Up @@ -62,6 +65,7 @@ func(o *obat) FindAll() (*[]web.Obat, error) {
response = append(response, result)
}

o.metric.ObatHistory.With(prometheus.Labels{"code": "200", "method": "GET", "type": "get"}).Observe(time.Since(time.Now()).Seconds())
o.metric.Obat.Set(float64(len(*data)))

return &response, nil
Expand Down
4 changes: 4 additions & 0 deletions internal/service/penyakit.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,9 @@
package service

import (
"time"

"github.com/prometheus/client_golang/prometheus"
"github.com/rulanugrh/larissa/internal/entity/web"
"github.com/rulanugrh/larissa/internal/repository"
"github.com/rulanugrh/larissa/internal/util"
Expand Down Expand Up @@ -86,6 +89,7 @@ func (p *penyakit) FindAll() (*[]web.Penyakit, error) {
response = append(response, result)
}

p.gauge.PenyakitHistory.With(prometheus.Labels{"code": "200", "method": "GET", "type": "get"}).Observe(time.Since(time.Now()).Seconds())
p.gauge.Penyakit.Set(float64(len(*data)))

return &response, nil
Expand Down
6 changes: 5 additions & 1 deletion internal/service/user.go
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
package service

import (
"time"

"github.com/prometheus/client_golang/prometheus"
"github.com/rulanugrh/larissa/internal/entity/domain"
"github.com/rulanugrh/larissa/internal/entity/web"
Expand Down Expand Up @@ -68,6 +70,7 @@ func(u *user) Register(req domain.UserRegister) (*web.User, error) {
}

u.gauge.User.Inc()
u.gauge.UserHistory.With(prometheus.Labels{"code": "200", "method": "POST", "type": "update"}).Observe(time.Since(time.Now()).Seconds())
u.gauge.UserUpgrade.With(prometheus.Labels{"type": "create"}).Inc()
return &response, nil
}
Expand All @@ -92,7 +95,7 @@ func(u *user) Login(req domain.UserLogin) (*string, error) {
if err != nil {
return nil, err
}

u.gauge.UserHistory.With(prometheus.Labels{"code": "200", "method": "POST", "type": "login"}).Observe(time.Since(time.Now()).Seconds())
u.gauge.UserUpgrade.With(prometheus.Labels{"type": "login"}).Inc()
return &token, nil
}
Expand All @@ -104,6 +107,7 @@ func(u *user) Update(id uint, req domain.User) error {
return util.Errors(err)
}

u.gauge.UserHistory.With(prometheus.Labels{"code": "200", "method": "PUT", "type": "update"}).Observe(time.Since(time.Now()).Seconds())
u.gauge.UserUpgrade.With(prometheus.Labels{"type": "update"}).Inc()
return nil
}
20 changes: 12 additions & 8 deletions pkg/prometheus.go
Original file line number Diff line number Diff line change
Expand Up @@ -77,23 +77,27 @@ func (m *Metric) SetGauge() *Data {
}, []string{"type"}),
KunjunganHistory: prometheus.NewHistogramVec(prometheus.HistogramOpts{
Namespace: "kunjungan",
Name: "kunjungan_histogram",
Help: "Histogram for any request in endpoint kunjungan",
Name: "kunjungan_duration_request_seconds",
Help: "Duration request in endpoint kunjungan",
Buckets: []float64{0.1, 0.15, 0.2, 0.25, 0.3},
}, []string{"method", "code", "type"}),
ObatHistory: prometheus.NewHistogramVec(prometheus.HistogramOpts{
Namespace: "obat",
Name: "obat_histogram",
Help: "Histogram for any request in endpoint obat",
Name: "obat_duration_request_seconds",
Help: "Duration request in endpoint obat",
Buckets: []float64{0.1, 0.15, 0.2, 0.25, 0.3},
}, []string{"method", "code", "type"}),
UserHistory: prometheus.NewHistogramVec(prometheus.HistogramOpts{
Namespace: "user",
Name: "user_histogram",
Help: "Histogram for any request in endpoint user",
Name: "user_duration_request_seconds",
Help: "Duration request in endpoint user",
Buckets: []float64{0.1, 0.15, 0.2, 0.25, 0.3},
}, []string{"method", "code", "type"}),
PenyakitHistory: prometheus.NewHistogramVec(prometheus.HistogramOpts{
Namespace: "penyakit",
Name: "penyakit_histogram",
Help: "Histogram for any request in endpoint penyakit",
Name: "penyakit_duration_request_seconds",
Help: "Duration request in endpoint penyakit",
Buckets: []float64{0.1, 0.15, 0.2, 0.25, 0.3},
}, []string{"method", "code", "type"}),
}

Expand Down

0 comments on commit 47a2941

Please sign in to comment.