@@ -29,6 +29,7 @@ import (
2929 "time"
3030
3131 "github.com/AliceO2Group/Control/common/logger"
32+ "github.com/AliceO2Group/Control/common/monitoring"
3233 odcpb "github.com/AliceO2Group/Control/core/integration/odc/protos"
3334 "github.com/sirupsen/logrus"
3435 "github.com/spf13/viper"
@@ -40,6 +41,10 @@ import (
4041
4142var log = logger .New (logrus .StandardLogger (), "odcclient" )
4243
44+ func newMetric () monitoring.Metric {
45+ return monitoring .NewMetric ("odc" )
46+ }
47+
4348type RpcClient struct {
4449 odcpb.ODCClient
4550 conn * grpc.ClientConn
@@ -131,3 +136,101 @@ func (m *RpcClient) Close() error {
131136 m .cancel ()
132137 return m .conn .Close ()
133138}
139+
140+ func (m * RpcClient ) Initialize (ctx context.Context , in * odcpb.InitializeRequest , opts ... grpc.CallOption ) (* odcpb.GeneralReply , error ) {
141+ metric := newMetric ()
142+ metric .AddTag ("method" , "Initialize" )
143+ defer monitoring .TimerSend (& metric , monitoring .Milliseconds )()
144+ return m .ODCClient .Initialize (ctx , in , opts ... )
145+ }
146+
147+ func (m * RpcClient ) Submit (ctx context.Context , in * odcpb.SubmitRequest , opts ... grpc.CallOption ) (* odcpb.GeneralReply , error ) {
148+ metric := newMetric ()
149+ metric .AddTag ("method" , "Submit" )
150+ defer monitoring .TimerSend (& metric , monitoring .Milliseconds )()
151+ return m .ODCClient .Submit (ctx , in , opts ... )
152+ }
153+
154+ func (m * RpcClient ) Activate (ctx context.Context , in * odcpb.ActivateRequest , opts ... grpc.CallOption ) (* odcpb.GeneralReply , error ) {
155+ metric := newMetric ()
156+ metric .AddTag ("method" , "Activate" )
157+ defer monitoring .TimerSend (& metric , monitoring .Milliseconds )()
158+ return m .ODCClient .Activate (ctx , in , opts ... )
159+ }
160+
161+ func (m * RpcClient ) Run (ctx context.Context , in * odcpb.RunRequest , opts ... grpc.CallOption ) (* odcpb.GeneralReply , error ) {
162+ metric := newMetric ()
163+ metric .AddTag ("method" , "Run" )
164+ defer monitoring .TimerSend (& metric , monitoring .Milliseconds )()
165+ return m .ODCClient .Run (ctx , in , opts ... )
166+ }
167+
168+ func (m * RpcClient ) Update (ctx context.Context , in * odcpb.UpdateRequest , opts ... grpc.CallOption ) (* odcpb.GeneralReply , error ) {
169+ metric := newMetric ()
170+ metric .AddTag ("method" , "Update" )
171+ defer monitoring .TimerSend (& metric , monitoring .Milliseconds )()
172+ return m .ODCClient .Update (ctx , in , opts ... )
173+ }
174+
175+ func (m * RpcClient ) Configure (ctx context.Context , in * odcpb.ConfigureRequest , opts ... grpc.CallOption ) (* odcpb.StateReply , error ) {
176+ metric := newMetric ()
177+ metric .AddTag ("method" , "Configure" )
178+ defer monitoring .TimerSend (& metric , monitoring .Milliseconds )()
179+ return m .ODCClient .Configure (ctx , in , opts ... )
180+ }
181+
182+ func (m * RpcClient ) SetProperties (ctx context.Context , in * odcpb.SetPropertiesRequest , opts ... grpc.CallOption ) (* odcpb.GeneralReply , error ) {
183+ metric := newMetric ()
184+ metric .AddTag ("method" , "SetProperties" )
185+ defer monitoring .TimerSend (& metric , monitoring .Milliseconds )()
186+ return m .ODCClient .SetProperties (ctx , in , opts ... )
187+ }
188+
189+ func (m * RpcClient ) GetState (ctx context.Context , in * odcpb.StateRequest , opts ... grpc.CallOption ) (* odcpb.StateReply , error ) {
190+ metric := newMetric ()
191+ metric .AddTag ("method" , "GetState" )
192+ defer monitoring .TimerSend (& metric , monitoring .Milliseconds )()
193+ return m .ODCClient .GetState (ctx , in , opts ... )
194+ }
195+
196+ func (m * RpcClient ) Start (ctx context.Context , in * odcpb.StartRequest , opts ... grpc.CallOption ) (* odcpb.StateReply , error ) {
197+ metric := newMetric ()
198+ metric .AddTag ("method" , "Start" )
199+ defer monitoring .TimerSend (& metric , monitoring .Milliseconds )()
200+ return m .ODCClient .Start (ctx , in , opts ... )
201+ }
202+
203+ func (m * RpcClient ) Stop (ctx context.Context , in * odcpb.StopRequest , opts ... grpc.CallOption ) (* odcpb.StateReply , error ) {
204+ metric := newMetric ()
205+ metric .AddTag ("method" , "Stop" )
206+ defer monitoring .TimerSend (& metric , monitoring .Milliseconds )()
207+ return m .ODCClient .Stop (ctx , in , opts ... )
208+ }
209+
210+ func (m * RpcClient ) Reset (ctx context.Context , in * odcpb.ResetRequest , opts ... grpc.CallOption ) (* odcpb.StateReply , error ) {
211+ metric := newMetric ()
212+ metric .AddTag ("method" , "Reset" )
213+ defer monitoring .TimerSend (& metric , monitoring .Milliseconds )()
214+ return m .ODCClient .Reset (ctx , in , opts ... )
215+ }
216+
217+ func (m * RpcClient ) Terminate (ctx context.Context , in * odcpb.TerminateRequest , opts ... grpc.CallOption ) (* odcpb.StateReply , error ) {
218+ metric := newMetric ()
219+ metric .AddTag ("method" , "Terminate" )
220+ defer monitoring .TimerSend (& metric , monitoring .Milliseconds )()
221+ return m .ODCClient .Terminate (ctx , in , opts ... )
222+ }
223+
224+ func (m * RpcClient ) Shutdown (ctx context.Context , in * odcpb.ShutdownRequest , opts ... grpc.CallOption ) (* odcpb.GeneralReply , error ) {
225+ metric := newMetric ()
226+ metric .AddTag ("method" , "Shutdown" )
227+ defer monitoring .TimerSend (& metric , monitoring .Milliseconds )()
228+ return m .ODCClient .Shutdown (ctx , in , opts ... )
229+ }
230+
231+ func (m * RpcClient ) Status (ctx context.Context , in * odcpb.StatusRequest , opts ... grpc.CallOption ) (* odcpb.StatusReply , error ) {
232+ metric := newMetric ()
233+ metric .AddTag ("method" , "Status" )
234+ defer monitoring .TimerSend (& metric , monitoring .Milliseconds )()
235+ return m .ODCClient .Status (ctx , in , opts ... )
236+ }
0 commit comments