Procházet zdrojové kódy

add app server-side logging

pull/44/head
Jonathan Cobb před 4 roky
rodič
revize
217fffafa0
2 změnil soubory, kde provedl 26 přidání a 0 odebrání
  1. +11
    -0
      bubble-server/src/main/java/bubble/resources/stream/FilterHttpResource.java
  2. +15
    -0
      bubble-server/src/main/resources/bubble/rule/RequestModifierRule_icon.js.hbs

+ 11
- 0
bubble-server/src/main/java/bubble/resources/stream/FilterHttpResource.java Zobrazit soubor

@@ -26,6 +26,7 @@ import bubble.service.boot.SelfNodeService;
import bubble.service.cloud.DeviceIdService;
import bubble.service.stream.ConnectionCheckResponse;
import bubble.service.stream.StandardRuleEngineService;
import com.fasterxml.jackson.databind.JsonNode;
import lombok.Getter;
import lombok.extern.slf4j.Slf4j;
import org.cobbzilla.util.collection.ExpirationEvictionPolicy;
@@ -603,6 +604,16 @@ public class FilterHttpResource {
return ok(summary);
}

@POST @Path(EP_LOGS+"/{requestId}")
public Response requestLog(@Context Request req,
@Context ContainerRequest ctx,
@PathParam("requestId") String requestId,
JsonNode logData) {
final FilterSubContext filterCtx = new FilterSubContext(req, requestId);
log.error(" >>>>> REQUEST-LOG("+requestId+"): "+json(logData, COMPACT_MAPPER));
return ok_empty();
}

@Path(EP_ASSETS+"/{requestId}/{appId}")
public AppAssetsResource getAppAssetsResource(@Context Request req,
@Context ContainerRequest ctx,


+ 15
- 0
bubble-server/src/main/resources/bubble/rule/RequestModifierRule_icon.js.hbs Zobrazit soubor

@@ -4,6 +4,21 @@ if (typeof {{PAGE_PREFIX}}_icon_status === 'undefined') {

let {{PAGE_PREFIX}}_icon_status = [];

{{PAGE_PREFIX}}_log = function (data) {
const logData = JSON.stringify(data);
const requestOptions = {
method: 'POST',
body: logData
};
fetch('/__bubble/api/filter/logs/{{BUBBLE_REQUEST_ID}}', requestOptions)
.then(() => {
console.log('Logged to server:', logData);
})
.catch((error) => {
console.error('Error logging "'+logData+'" to server:', error);
});
}

{{PAGE_PREFIX}}_addBubbleApp = function (app) {
if (window.self === window.top) {
{{PAGE_PREFIX}}_icon_status.push(app);


Načítá se…
Zrušit
Uložit