@@ -3,6 +3,7 @@ package metrics
33import (
44 "context"
55 "fmt"
6+ "github.com/serverledge-faas/serverledge/internal/registration"
67 "log"
78 "time"
89
@@ -176,21 +177,13 @@ func MetricsRetriever() {
176177 }
177178 retrievedMetrics .Completions = completionsPerFunction
178179
179- query = fmt .Sprintf ("%s_sum{node=\" %s\" }/%s_count{node=\" %s\" }" ,
180- EXECUTION_TIME , node .LocalNode , EXECUTION_TIME , node .LocalNode )
181- avgFunDuration , err := retrieveByFunction (query , api , ctx )
182- if err != nil {
183- log .Printf ("Error in retrieveByFunction: %v" , err )
184- }
185- retrievedMetrics .AvgExecutionTime = avgFunDuration
186-
187- // TODO: is this needed?
188- query = fmt .Sprintf ("%s_sum{}/%s_count{}" , EXECUTION_TIME , EXECUTION_TIME )
189- avgFunDurationAllNodes , err := retrieveByFunctionAndNode (query , api , ctx )
190- if err != nil {
191- log .Printf ("Error in retrieveByFunction: %v" , err )
192- }
193- retrievedMetrics .AvgExecutionTimeAllNodes = avgFunDurationAllNodes
180+ //query = fmt.Sprintf("%s_sum{node=\"%s\"}/%s_count{node=\"%s\"}",
181+ // EXECUTION_TIME, node.LocalNode, EXECUTION_TIME, node.LocalNode)
182+ //avgFunDuration, err := retrieveByFunction(query, api, ctx)
183+ //if err != nil {
184+ // log.Printf("Error in retrieveByFunction: %v", err)
185+ //}
186+ //retrievedMetrics.AvgExecutionTime = avgFunDuration
194187
195188 query = fmt .Sprintf ("%s_sum{}/%s_count{}" , OUTPUT_SIZE , OUTPUT_SIZE )
196189 avgOutputSize , err := retrieveByFunction (query , api , ctx )
@@ -206,18 +199,28 @@ func MetricsRetriever() {
206199 }
207200 retrievedMetrics .BranchFrequency = frequencyPerTaskAndNextOne
208201
202+ // Execution time on Edge peers
203+ localArea := registration .SelfRegistration .Area
204+ query = fmt .Sprintf ("%s_sum{node=~\" \\ \\ (%s\\ \\ ).*\" }/%s_count{node=~\" \\ \\ (%s\\ \\ ).*\" }" ,
205+ EXECUTION_TIME , localArea , EXECUTION_TIME , localArea )
206+ avgFunDurationAllNodes , err := retrieveByFunctionAndNode (query , api , ctx )
207+ if err != nil {
208+ log .Printf ("Error in retrieveByFunction: %v" , err )
209+ }
210+ retrievedMetrics .AvgEdgeExecutionTime = avgFunDurationAllNodes
211+
209212 // CLOUD
210213 cloudArea := config .GetString (config .REGISTRY_REMOTE_AREA , "" )
211214 if cloudArea != "" {
212- log .Printf ("Retrieved cloudarea %s" , cloudArea )
213215 query = fmt .Sprintf ("%s_sum{node=~\" \\ \\ (%s\\ \\ ).*\" }/%s_count{node=~\" \\ \\ (%s\\ \\ ).*\" }" ,
214216 EXECUTION_TIME , cloudArea , EXECUTION_TIME , cloudArea )
215217 avgFunDuration , err := retrieveByFunction (query , api , ctx )
216218 if err != nil {
217219 log .Printf ("Error in retrieveByFunction: %v" , err )
218220 }
219- fmt .Println (avgFunDuration )
220- // TODO: use this information
221+ retrievedMetrics .AvgRemoteExecutionTime = avgFunDuration
222+ } else {
223+ retrievedMetrics .AvgRemoteExecutionTime = make (map [string ]float64 )
221224 }
222225
223226 fmt .Println ("All queries completed" )
0 commit comments