Skip to content

Commit 71372ad

Browse files
committed
adding traces options
1 parent b8e64e7 commit 71372ad

File tree

6 files changed

+286
-744
lines changed

6 files changed

+286
-744
lines changed

microservice-example-gradle-v2x/service.log

Lines changed: 100 additions & 233 deletions
Large diffs are not rendered by default.
Binary file not shown.

microservice-example-maven-v2x/service.log

Lines changed: 149 additions & 508 deletions
Large diffs are not rendered by default.
Binary file not shown.

trampoline/src/main/java/org/ernest/applications/trampoline/collectors/TraceCollector.java

Lines changed: 27 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,34 @@ public List<TraceActuator> getTraces(String idInstance) throws CreatingSettingsF
2828
List<TraceActuator> traces = new ArrayList<>();
2929

3030
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;
3232

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 {
3359
for (int i = 0; i < traceArrayJson.length(); i++) {
3460
JSONObject traceJson = traceArrayJson.getJSONObject(i);
3561

@@ -40,7 +66,5 @@ public List<TraceActuator> getTraces(String idInstance) throws CreatingSettingsF
4066
traceActuator.setStatus(traceJson.getJSONObject("info").getJSONObject("headers").getJSONObject("response").getString("status"));
4167
traces.add(traceActuator);
4268
}
43-
44-
return traces;
4569
}
4670
}

trampoline/src/main/java/org/ernest/applications/trampoline/entities/TraceActuator.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,4 +39,14 @@ public String getStatus() {
3939
public void setStatus(String status) {
4040
this.status = status;
4141
}
42+
43+
@Override
44+
public String toString() {
45+
return "TraceActuator{" +
46+
"date='" + date + '\'' +
47+
", method='" + method + '\'' +
48+
", path='" + path + '\'' +
49+
", status='" + status + '\'' +
50+
'}';
51+
}
4252
}

0 commit comments

Comments
 (0)