Skip to content

Commit 1daf4fe

Browse files
committed
add nurse healthchecker/profiler
1 parent 6a73fef commit 1daf4fe

File tree

11 files changed

+735
-7
lines changed

11 files changed

+735
-7
lines changed

Diff for: app/app.go

+18
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,8 @@ import (
8484
_ "github.com/cosmos/cosmos-sdk/x/params" // import for side-effects
8585
_ "github.com/cosmos/cosmos-sdk/x/slashing" // import for side-effects
8686
_ "github.com/cosmos/cosmos-sdk/x/staking" // import for side-effects
87+
88+
"github.com/allora-network/allora-chain/health"
8789
)
8890

8991
// DefaultNodeHome default home directories for the application daemon
@@ -138,6 +140,9 @@ type AlloraApp struct {
138140

139141
// simulation manager
140142
sm *module.SimulationManager
143+
144+
// Nurse
145+
nurse *health.Nurse
141146
}
142147

143148
func init() {
@@ -182,6 +187,19 @@ func NewAlloraApp(
182187
appBuilder *runtime.AppBuilder
183188
)
184189

190+
// Initialize nurse if provided with a config TOML path
191+
nurseCfgPath := os.Getenv("NURSE_TOML_PATH")
192+
if nurseCfgPath != "" {
193+
nurseCfg := health.MustReadConfigTOML(nurseCfgPath)
194+
nurseCfg.Logger = logger
195+
app.nurse = health.NewNurse(nurseCfg)
196+
197+
err := app.nurse.Start()
198+
if err != nil {
199+
return nil, err
200+
}
201+
}
202+
185203
if err := depinject.Inject(
186204
depinject.Configs(
187205
AppConfig(),

Diff for: go.mod

+2-1
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,10 @@ require (
3535
github.com/gogo/protobuf v1.3.2
3636
github.com/golang/mock v1.6.0
3737
github.com/golang/protobuf v1.5.4
38+
github.com/google/pprof v0.0.0-20240117000934-35fc243c5815
3839
github.com/grpc-ecosystem/grpc-gateway v1.16.0
3940
github.com/ignite/cli/v28 v28.3.0
41+
github.com/pelletier/go-toml/v2 v2.1.0
4042
github.com/spf13/cobra v1.8.0
4143
github.com/spf13/viper v1.18.2
4244
github.com/stretchr/testify v1.9.0
@@ -161,7 +163,6 @@ require (
161163
github.com/mtibben/percent v0.2.1 // indirect
162164
github.com/oasisprotocol/curve25519-voi v0.0.0-20230904125328-1f23a7beb09a // indirect
163165
github.com/oklog/run v1.1.0 // indirect
164-
github.com/pelletier/go-toml/v2 v2.1.0 // indirect
165166
github.com/petermattis/goid v0.0.0-20231207134359-e60b3f734c67 // indirect
166167
github.com/pkg/errors v0.9.1 // indirect
167168
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect

Diff for: go.sum

+8-3
Original file line numberDiff line numberDiff line change
@@ -500,12 +500,15 @@ github.com/go-playground/validator/v10 v10.14.0 h1:vgvQWe3XCz3gIeFDm/HnTIbj6UGmg
500500
github.com/go-playground/validator/v10 v10.14.0/go.mod h1:9iXMNT7sEkjXb0I+enO7QXmzG6QCsPWY4zveKFVRSyU=
501501
github.com/go-sql-driver/mysql v1.4.0/go.mod h1:zAC/RDZ24gD3HViQzih4MyKcchzm+sOG5ZlKdlhCg5w=
502502
github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
503-
github.com/gobwas/httphead v0.0.0-20180130184737-2c6c146eadee h1:s+21KNqlpePfkah2I+gwHF8xmJWRjooY+5248k6m4A0=
504503
github.com/gobwas/httphead v0.0.0-20180130184737-2c6c146eadee/go.mod h1:L0fX3K22YWvt/FAX9NnzrNzcI4wNYi9Yku4O0LKYflo=
505-
github.com/gobwas/pool v0.2.0 h1:QEmUOlnSjWtnpRGHF3SauEiOsy82Cup83Vf2LcMlnc8=
504+
github.com/gobwas/httphead v0.1.0 h1:exrUm0f4YX0L7EBwZHuCF4GDp8aJfVeBrlLQrs6NqWU=
505+
github.com/gobwas/httphead v0.1.0/go.mod h1:O/RXo79gxV8G+RqlR/otEwx4Q36zl9rqC5u12GKvMCM=
506506
github.com/gobwas/pool v0.2.0/go.mod h1:q8bcK0KcYlCgd9e7WYLm9LpyS+YeLd8JVDW6WezmKEw=
507-
github.com/gobwas/ws v1.0.2 h1:CoAavW/wd/kulfZmSIBt6p24n4j7tHgNVCjsfHVNUbo=
507+
github.com/gobwas/pool v0.2.1 h1:xfeeEhW7pwmX8nuLVlqbzVc7udMDrwetjEv+TZIz1og=
508+
github.com/gobwas/pool v0.2.1/go.mod h1:q8bcK0KcYlCgd9e7WYLm9LpyS+YeLd8JVDW6WezmKEw=
508509
github.com/gobwas/ws v1.0.2/go.mod h1:szmBTxLgaFppYjEmNtny/v3w89xOydFnnZMcgRRu/EM=
510+
github.com/gobwas/ws v1.2.1 h1:F2aeBZrm2NDsc7vbovKrWSogd4wvfAxg0FQ89/iqOTk=
511+
github.com/gobwas/ws v1.2.1/go.mod h1:hRKAFb8wOxFROYNsT1bqfWnhX+b5MFeJM9r2ZSwg/KY=
509512
github.com/goccy/go-json v0.10.2 h1:CrxCmQqYDkv1z7lO7Wbh2HN93uovUHgrECaO5ZrCXAU=
510513
github.com/goccy/go-json v0.10.2/go.mod h1:6MelG93GURQebXPDq3khkgXZkazVtN9CRI+MGFi0w8I=
511514
github.com/godbus/dbus v0.0.0-20190726142602-4481cbc300e2 h1:ZpnhV/YsD2/4cESfV5+Hoeu/iUR3ruzNvZ+yQfO03a0=
@@ -612,6 +615,8 @@ github.com/google/pprof v0.0.0-20210226084205-cbba55b83ad5/go.mod h1:kpwsk12EmLe
612615
github.com/google/pprof v0.0.0-20210601050228-01bbb1931b22/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
613616
github.com/google/pprof v0.0.0-20210609004039-a478d1d731e9/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
614617
github.com/google/pprof v0.0.0-20210720184732-4bb14d4b1be1/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE=
618+
github.com/google/pprof v0.0.0-20240117000934-35fc243c5815 h1:WzfWbQz/Ze8v6l++GGbGNFZnUShVpP/0xffCPLL+ax8=
619+
github.com/google/pprof v0.0.0-20240117000934-35fc243c5815/go.mod h1:czg5+yv1E0ZGTi6S6vVK1mke0fV+FaUhNGcd6VRS9Ik=
615620
github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI=
616621
github.com/google/s2a-go v0.1.7 h1:60BLSyTrOV4/haCDW4zb1guZItoSq8foHCXrAnjBo/o=
617622
github.com/google/s2a-go v0.1.7/go.mod h1:50CgR4k1jNlWBu4UfS4AcfhVe1r6pdZPygJ3R8F0Qdw=

0 commit comments

Comments
 (0)