diff --git a/pkg/collaborators/middleware/metrics_middleware.go b/pkg/collaborators/middleware/metrics_middleware.go
index 69597fe41b1dbef7d91486efbfc4d14c56af83c1..38ed853d1a7e34f05d110c4023a0ab8cba0589aa 100644
--- a/pkg/collaborators/middleware/metrics_middleware.go
+++ b/pkg/collaborators/middleware/metrics_middleware.go
@@ -1,10 +1,10 @@
 // Code generated by gowrap. DO NOT EDIT.
-// template: ..\..\..\assets\templates\middleware\metrics
+// template: ../../../assets/templates/middleware/metrics
 // gowrap: http://github.com/hexdigest/gowrap
 
 package middleware
 
-//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/collaborators -i Collaborators -t ..\..\..\assets\templates\middleware\metrics -o metrics_middleware.go -l ""
+//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/collaborators -i Collaborators -t ../../../assets/templates/middleware/metrics -o metrics_middleware.go -l ""
 
 import (
 	"context"
diff --git a/pkg/collections/middleware/metrics_middleware.go b/pkg/collections/middleware/metrics_middleware.go
index 3ebdfbd1a254cbc56e66b1cd42ddcbadbcaceac2..fc244f736b01bcfa0b298e0c5d8aac9d7d5f5fd7 100644
--- a/pkg/collections/middleware/metrics_middleware.go
+++ b/pkg/collections/middleware/metrics_middleware.go
@@ -1,10 +1,10 @@
 // Code generated by gowrap. DO NOT EDIT.
-// template: ..\..\..\assets\templates\middleware\metrics
+// template: ../../../assets/templates/middleware/metrics
 // gowrap: http://github.com/hexdigest/gowrap
 
 package middleware
 
-//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/collections -i Collections -t ..\..\..\assets\templates\middleware\metrics -o metrics_middleware.go -l ""
+//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/collections -i Collections -t ../../../assets/templates/middleware/metrics -o metrics_middleware.go -l ""
 
 import (
 	"context"
diff --git a/pkg/environments/middleware/metrics_middleware.go b/pkg/environments/middleware/metrics_middleware.go
index 5501ac3cb36ff85bdb267743043b23f9696d44b4..dfa1905c10d6b93aa6efaa235fd62eeff8cd4873 100644
--- a/pkg/environments/middleware/metrics_middleware.go
+++ b/pkg/environments/middleware/metrics_middleware.go
@@ -1,10 +1,10 @@
 // Code generated by gowrap. DO NOT EDIT.
-// template: ..\..\..\assets\templates\middleware\metrics
+// template: ../../../assets/templates/middleware/metrics
 // gowrap: http://github.com/hexdigest/gowrap
 
 package middleware
 
-//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/environments -i Environments -t ..\..\..\assets\templates\middleware\metrics -o metrics_middleware.go -l ""
+//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/environments -i Environments -t ../../../assets/templates/middleware/metrics -o metrics_middleware.go -l ""
 
 import (
 	"context"
diff --git a/pkg/invitations/middleware/metrics_middleware.go b/pkg/invitations/middleware/metrics_middleware.go
index 9bc85e88af2a1b09f49cd7469931db047881e5d1..a13a17a0baa9e2dff8dbacf460f65801b3a49c53 100644
--- a/pkg/invitations/middleware/metrics_middleware.go
+++ b/pkg/invitations/middleware/metrics_middleware.go
@@ -1,10 +1,10 @@
 // Code generated by gowrap. DO NOT EDIT.
-// template: ..\..\..\assets\templates\middleware\metrics
+// template: ../../../assets/templates/middleware/metrics
 // gowrap: http://github.com/hexdigest/gowrap
 
 package middleware
 
-//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/invitations -i Invitations -t ..\..\..\assets\templates\middleware\metrics -o metrics_middleware.go -l ""
+//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/invitations -i Invitations -t ../../../assets/templates/middleware/metrics -o metrics_middleware.go -l ""
 
 import (
 	"context"
diff --git a/pkg/items/middleware/metrics_middleware.go b/pkg/items/middleware/metrics_middleware.go
index 913a0df8cf22451238f2d3ef0d3189584856cd23..059864343b74e28dbd7deb855ab116fd158bf417 100644
--- a/pkg/items/middleware/metrics_middleware.go
+++ b/pkg/items/middleware/metrics_middleware.go
@@ -1,10 +1,10 @@
 // Code generated by gowrap. DO NOT EDIT.
-// template: ..\..\..\assets\templates\middleware\metrics
+// template: ../../../assets/templates/middleware/metrics
 // gowrap: http://github.com/hexdigest/gowrap
 
 package middleware
 
-//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/items -i Items -t ..\..\..\assets\templates\middleware\metrics -o metrics_middleware.go -l ""
+//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/items -i Items -t ../../../assets/templates/middleware/metrics -o metrics_middleware.go -l ""
 
 import (
 	"context"
diff --git a/pkg/locales/middleware/metrics_middleware.go b/pkg/locales/middleware/metrics_middleware.go
index 3868740a77af904fa5d964ae7650f2eb33da0a6e..611b951b22065e1179f76ecc166a61f081416975 100644
--- a/pkg/locales/middleware/metrics_middleware.go
+++ b/pkg/locales/middleware/metrics_middleware.go
@@ -1,10 +1,10 @@
 // Code generated by gowrap. DO NOT EDIT.
-// template: ..\..\..\assets\templates\middleware\metrics
+// template: ../../../assets/templates/middleware/metrics
 // gowrap: http://github.com/hexdigest/gowrap
 
 package middleware
 
-//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/locales -i Locales -t ..\..\..\assets\templates\middleware\metrics -o metrics_middleware.go -l ""
+//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/locales -i Locales -t ../../../assets/templates/middleware/metrics -o metrics_middleware.go -l ""
 
 import (
 	"context"
diff --git a/pkg/members/middleware/metrics_middleware.go b/pkg/members/middleware/metrics_middleware.go
index 6ece219dcd15f05a54b3c7ff973a1fa0720f02dc..f15d50785d3e6de4b2608de31c65d84a8c66c434 100644
--- a/pkg/members/middleware/metrics_middleware.go
+++ b/pkg/members/middleware/metrics_middleware.go
@@ -1,10 +1,10 @@
 // Code generated by gowrap. DO NOT EDIT.
-// template: ..\..\..\assets\templates\middleware\metrics
+// template: ../../../assets/templates/middleware/metrics
 // gowrap: http://github.com/hexdigest/gowrap
 
 package middleware
 
-//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/members -i Members -t ..\..\..\assets\templates\middleware\metrics -o metrics_middleware.go -l ""
+//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/members -i Members -t ../../../assets/templates/middleware/metrics -o metrics_middleware.go -l ""
 
 import (
 	"context"
diff --git a/pkg/organizations/middleware/metrics_middleware.go b/pkg/organizations/middleware/metrics_middleware.go
index dc1110733b630a3383c6c1dd49493ff237daec00..2d5dff8e9b6fafc485d27afd4298c2324743bfe7 100644
--- a/pkg/organizations/middleware/metrics_middleware.go
+++ b/pkg/organizations/middleware/metrics_middleware.go
@@ -8,6 +8,7 @@ package middleware
 
 import (
 	"context"
+	"strings"
 
 	"git.perx.ru/perxis/perxis-go/pkg/metrics"
 	"git.perx.ru/perxis/perxis-go/pkg/options"
@@ -17,6 +18,7 @@ import (
 
 // metricsMiddleware implements organizations.Organizations that is instrumented with metrics
 type metricsMiddleware struct {
+	serviceName    string
 	requestMetrics *metrics.RequestMetrics
 	next           organizations.Organizations
 }
@@ -25,6 +27,7 @@ type metricsMiddleware struct {
 func MetricsMiddleware(requestMetrics *metrics.RequestMetrics) Middleware {
 	return func(next organizations.Organizations) organizations.Organizations {
 		return &metricsMiddleware{
+			serviceName:    strings.ToLower("Organizations"),
 			requestMetrics: requestMetrics,
 			next:           next,
 		}
@@ -33,12 +36,13 @@ func MetricsMiddleware(requestMetrics *metrics.RequestMetrics) Middleware {
 
 // Create implements organizations.Organizations
 func (m metricsMiddleware) Create(ctx context.Context, org *organizations.Organization) (created *organizations.Organization, err error) {
-	timer := prometheus.NewTimer(m.requestMetrics.DurationSeconds.WithLabelValues("Create"))
+	labels := prometheus.Labels{"service": m.serviceName, "method": "Create"}
+	timer := prometheus.NewTimer(m.requestMetrics.DurationSeconds.With(labels))
 	defer timer.ObserveDuration()
-	m.requestMetrics.Total.WithLabelValues("Create").Inc()
+	m.requestMetrics.Total.With(labels).Inc()
 	created, err = m.next.Create(ctx, org)
 	if err != nil {
-		m.requestMetrics.FailedTotal.WithLabelValues("Create").Inc()
+		m.requestMetrics.FailedTotal.With(labels).Inc()
 		return
 	}
 	return
@@ -46,12 +50,13 @@ func (m metricsMiddleware) Create(ctx context.Context, org *organizations.Organi
 
 // Delete implements organizations.Organizations
 func (m metricsMiddleware) Delete(ctx context.Context, orgId string) (err error) {
-	timer := prometheus.NewTimer(m.requestMetrics.DurationSeconds.WithLabelValues("Delete"))
+	labels := prometheus.Labels{"service": m.serviceName, "method": "Delete"}
+	timer := prometheus.NewTimer(m.requestMetrics.DurationSeconds.With(labels))
 	defer timer.ObserveDuration()
-	m.requestMetrics.Total.WithLabelValues("Delete").Inc()
+	m.requestMetrics.Total.With(labels).Inc()
 	err = m.next.Delete(ctx, orgId)
 	if err != nil {
-		m.requestMetrics.FailedTotal.WithLabelValues("Delete").Inc()
+		m.requestMetrics.FailedTotal.With(labels).Inc()
 		return
 	}
 	return
@@ -59,12 +64,13 @@ func (m metricsMiddleware) Delete(ctx context.Context, orgId string) (err error)
 
 // Find implements organizations.Organizations
 func (m metricsMiddleware) Find(ctx context.Context, filter *organizations.Filter, opts *options.FindOptions) (orgs []*organizations.Organization, total int, err error) {
-	timer := prometheus.NewTimer(m.requestMetrics.DurationSeconds.WithLabelValues("Find"))
+	labels := prometheus.Labels{"service": m.serviceName, "method": "Find"}
+	timer := prometheus.NewTimer(m.requestMetrics.DurationSeconds.With(labels))
 	defer timer.ObserveDuration()
-	m.requestMetrics.Total.WithLabelValues("Find").Inc()
+	m.requestMetrics.Total.With(labels).Inc()
 	orgs, total, err = m.next.Find(ctx, filter, opts)
 	if err != nil {
-		m.requestMetrics.FailedTotal.WithLabelValues("Find").Inc()
+		m.requestMetrics.FailedTotal.With(labels).Inc()
 		return
 	}
 	return
@@ -72,12 +78,13 @@ func (m metricsMiddleware) Find(ctx context.Context, filter *organizations.Filte
 
 // Get implements organizations.Organizations
 func (m metricsMiddleware) Get(ctx context.Context, orgId string) (org *organizations.Organization, err error) {
-	timer := prometheus.NewTimer(m.requestMetrics.DurationSeconds.WithLabelValues("Get"))
+	labels := prometheus.Labels{"service": m.serviceName, "method": "Get"}
+	timer := prometheus.NewTimer(m.requestMetrics.DurationSeconds.With(labels))
 	defer timer.ObserveDuration()
-	m.requestMetrics.Total.WithLabelValues("Get").Inc()
+	m.requestMetrics.Total.With(labels).Inc()
 	org, err = m.next.Get(ctx, orgId)
 	if err != nil {
-		m.requestMetrics.FailedTotal.WithLabelValues("Get").Inc()
+		m.requestMetrics.FailedTotal.With(labels).Inc()
 		return
 	}
 	return
@@ -85,12 +92,13 @@ func (m metricsMiddleware) Get(ctx context.Context, orgId string) (org *organiza
 
 // Update implements organizations.Organizations
 func (m metricsMiddleware) Update(ctx context.Context, org *organizations.Organization) (err error) {
-	timer := prometheus.NewTimer(m.requestMetrics.DurationSeconds.WithLabelValues("Update"))
+	labels := prometheus.Labels{"service": m.serviceName, "method": "Update"}
+	timer := prometheus.NewTimer(m.requestMetrics.DurationSeconds.With(labels))
 	defer timer.ObserveDuration()
-	m.requestMetrics.Total.WithLabelValues("Update").Inc()
+	m.requestMetrics.Total.With(labels).Inc()
 	err = m.next.Update(ctx, org)
 	if err != nil {
-		m.requestMetrics.FailedTotal.WithLabelValues("Update").Inc()
+		m.requestMetrics.FailedTotal.With(labels).Inc()
 		return
 	}
 	return
diff --git a/pkg/references/middleware/metrics_middleware.go b/pkg/references/middleware/metrics_middleware.go
index 224b2ecdac55f5964b268f790ac0ee3ac51301e1..119a1b7592e33810f064143994569568fe972602 100644
--- a/pkg/references/middleware/metrics_middleware.go
+++ b/pkg/references/middleware/metrics_middleware.go
@@ -1,10 +1,10 @@
 // Code generated by gowrap. DO NOT EDIT.
-// template: ..\..\..\assets\templates\middleware\metrics
+// template: ../../../assets/templates/middleware/metrics
 // gowrap: http://github.com/hexdigest/gowrap
 
 package middleware
 
-//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/references -i References -t ..\..\..\assets\templates\middleware\metrics -o metrics_middleware.go -l ""
+//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/references -i References -t ../../../assets/templates/middleware/metrics -o metrics_middleware.go -l ""
 
 import (
 	"context"
diff --git a/pkg/roles/middleware/metrics_middleware.go b/pkg/roles/middleware/metrics_middleware.go
index 204df624d8cb8850cbd4db18f6e2062d2538eae8..0280d5cf9a4e05882804f3148bde8b3b83f65c39 100644
--- a/pkg/roles/middleware/metrics_middleware.go
+++ b/pkg/roles/middleware/metrics_middleware.go
@@ -1,10 +1,10 @@
 // Code generated by gowrap. DO NOT EDIT.
-// template: ..\..\..\assets\templates\middleware\metrics
+// template: ../../../assets/templates/middleware/metrics
 // gowrap: http://github.com/hexdigest/gowrap
 
 package middleware
 
-//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/roles -i Roles -t ..\..\..\assets\templates\middleware\metrics -o metrics_middleware.go -l ""
+//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/roles -i Roles -t ../../../assets/templates/middleware/metrics -o metrics_middleware.go -l ""
 
 import (
 	"context"
diff --git a/pkg/spaces/middleware/metrics_middleware.go b/pkg/spaces/middleware/metrics_middleware.go
index 6424331acf04d3a28a65bf85e57015a8a0f16538..b9cecf1da720204c1cf0b4cd80e9b58423a9c0df 100644
--- a/pkg/spaces/middleware/metrics_middleware.go
+++ b/pkg/spaces/middleware/metrics_middleware.go
@@ -1,10 +1,10 @@
 // Code generated by gowrap. DO NOT EDIT.
-// template: ..\..\..\assets\templates\middleware\metrics
+// template: ../../../assets/templates/middleware/metrics
 // gowrap: http://github.com/hexdigest/gowrap
 
 package middleware
 
-//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/spaces -i Spaces -t ..\..\..\assets\templates\middleware\metrics -o metrics_middleware.go -l ""
+//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/spaces -i Spaces -t ../../../assets/templates/middleware/metrics -o metrics_middleware.go -l ""
 
 import (
 	"context"
diff --git a/pkg/users/middleware/metrics_middleware.go b/pkg/users/middleware/metrics_middleware.go
index 860a3da8766d845533c71d6fa19d77802702e2df..fb55d90b575bbb909076f2f62c2565ea7234fe45 100644
--- a/pkg/users/middleware/metrics_middleware.go
+++ b/pkg/users/middleware/metrics_middleware.go
@@ -1,10 +1,10 @@
 // Code generated by gowrap. DO NOT EDIT.
-// template: ..\..\..\assets\templates\middleware\metrics
+// template: ../../../assets/templates/middleware/metrics
 // gowrap: http://github.com/hexdigest/gowrap
 
 package middleware
 
-//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/users -i Users -t ..\..\..\assets\templates\middleware\metrics -o metrics_middleware.go -l ""
+//go:generate gowrap gen -p git.perx.ru/perxis/perxis-go/pkg/users -i Users -t ../../../assets/templates/middleware/metrics -o metrics_middleware.go -l ""
 
 import (
 	"context"