Browser protocol describes the data format between skywalking-client-js and the backend.
Browser protocol is defined in gRPC format and exposed in HTTP 1.1 for the browser.
Detailed information about data format can be found in BrowserPerf.proto.
Send a performance data object in JSON format.
Input:
{ "service": "web", "serviceVersion": "v0.0.1", "pagePath": "/index.html", "redirectTime": 10, "dnsTime": 10, "ttfbTime": 10, "tcpTime": 10, "transTime": 10, "domAnalysisTime": 10, "fptTime": 10, "domReadyTime": 10, "loadPageTime": 10, "resTime": 10, "sslTime": 10, "ttlTime": 10, "firstPackTime": 10, }
OutPut:
HTTP Status: 204
Send a performance data object in JSON format. Since client-js 1.0.0, the following attached metrics are reported.
Input:
{ "service": "web", "serviceVersion": "v0.0.1", "pagePath": "/index.html", "fmpTime": 10, // Deprecated since skywalking-client-js 1.0. This is no longer recommended. Please use the `useWebVitals` instead. /* NOTE, Safari does not support all core web vitals, and Firefox does not support `CLS`. */ "clsTime": 10, "lcpTime": 10, }
OutPut:
HTTP Status: 204
Send a performance data object in JSON format. Since client-js 1.0.0, the following attached metrics are reported.
Input:
[ { "service": "web", "serviceVersion": "v0.0.1", "pagePath": "/index.html", "inpTime": 10, } ]
OutPut:
HTTP Status: 204
Send a static resources data object in JSON format. Since client-js 1.0.0, the following attached metrics are reported.
Input:
[ { "service": "web", "serviceVersion": "v0.0.1", "pagePath": "/index.html", "name": "vue.js", "duration": 600, "size": 100000, "protocol": "h2", "type": "script", } ]
OutPut:
HTTP Status: 204
Send an error log object list in JSON format.
Input:
[ { "uniqueId": "55ec6178-3fb7-43ef-899c-a26944407b01", "service": "web", "serviceVersion": "v0.0.1", "pagePath": "/index.html", "category": "ajax", "message": "error", "line": 1, "col": 1, "stack": "error", "errorUrl": "/index.html" }, { "uniqueId": "55ec6178-3fb7-43ef-899c-a26944407b02", "service": "web", "serviceVersion": "v0.0.1", "pagePath": "/index.html", "category": "ajax", "message": "error", "line": 1, "col": 1, "stack": "error", "errorUrl": "/index.html" } ]
OutPut:
HTTP Status: 204
Send a single error log object in JSON format.
Input:
{ "uniqueId": "55ec6178-3fb7-43ef-899c-a26944407b01", "service": "web", "serviceVersion": "v0.0.1", "pagePath": "/index.html", "category": "ajax", "message": "error", "line": 1, "col": 1, "stack": "error", "errorUrl": "/index.html" }
OutPut:
HTTP Status: 204
Note, BrowserErrorLog#uniqueId should be unique in the whole distributed environments.