@@ -28,8 +28,34 @@ public List<TraceActuator> getTraces(String idInstance) throws CreatingSettingsF
28
28
List <TraceActuator > traces = new ArrayList <>();
29
29
30
30
Instance instance = ecosystemManager .getEcosystem ().getInstances ().stream ().filter (i -> i .getId ().equals (idInstance )).findAny ().get ();
31
- JSONArray traceArrayJson = new JSONArray ( new RestTemplate (). getForObject ( "http://127.0.0.1:" + instance . getPort () + instance . getActuatorPrefix () + "/trace" , String . class )) ;
31
+ JSONArray traceArrayJson ;
32
32
33
+ try {
34
+ traceArrayJson = new JSONArray (new RestTemplate ().getForObject ("http://127.0.0.1:" + instance .getPort () + instance .getActuatorPrefix () + "/trace" , String .class ));
35
+ buildTracesV1x (traces , traceArrayJson );
36
+ }catch (Exception e ){
37
+ traceArrayJson = new JSONObject (new RestTemplate ().getForObject ("http://127.0.0.1:" + instance .getPort () + instance .getActuatorPrefix () + "/httptrace" , String .class )).getJSONArray ("traces" );
38
+ buildTracesV2x (traces , traceArrayJson );
39
+ }
40
+
41
+ return traces ;
42
+ }
43
+
44
+ private void buildTracesV2x (List <TraceActuator > traces , JSONArray traceArrayJson ) throws JSONException {
45
+ for (int i = 0 ; i < traceArrayJson .length (); i ++) {
46
+ JSONObject traceJson = traceArrayJson .getJSONObject (i );
47
+
48
+ org .ernest .applications .trampoline .entities .TraceActuator traceActuator = new org .ernest .applications .trampoline .entities .TraceActuator ();
49
+ traceActuator .setDate (traceJson .getString ("timestamp" ));
50
+ traceActuator .setMethod (traceJson .getJSONObject ("request" ).getString ("method" ));
51
+ traceActuator .setPath (traceJson .getJSONObject ("request" ).getString ("uri" ));
52
+ traceActuator .setStatus (traceJson .getJSONObject ("response" ).getString ("status" ));
53
+ traces .add (traceActuator );
54
+ }
55
+
56
+ }
57
+
58
+ private void buildTracesV1x (List <TraceActuator > traces , JSONArray traceArrayJson ) throws JSONException {
33
59
for (int i = 0 ; i < traceArrayJson .length (); i ++) {
34
60
JSONObject traceJson = traceArrayJson .getJSONObject (i );
35
61
@@ -40,7 +66,5 @@ public List<TraceActuator> getTraces(String idInstance) throws CreatingSettingsF
40
66
traceActuator .setStatus (traceJson .getJSONObject ("info" ).getJSONObject ("headers" ).getJSONObject ("response" ).getString ("status" ));
41
67
traces .add (traceActuator );
42
68
}
43
-
44
- return traces ;
45
69
}
46
70
}
0 commit comments