Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

@arkitektum/client-logger

Package Overview
Dependencies
Maintainers
3
Versions
6
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@arkitektum/client-logger - npm Package Compare versions

Comparing version 1.0.2 to 1.0.3

9

lib/cjs/index.js

@@ -167,3 +167,3 @@ "use strict";

ClientLogger.prototype.postLogData = function (logMessages) {
var _a;
var _a, _b;
var logData = (_a = new LogData(this.appName, this.sessionId, logMessages)) === null || _a === void 0 ? void 0 : _a.logMessages;

@@ -177,3 +177,8 @@ var fetchOptions = {

};
fetch(this.logApiUrl, fetchOptions);
if (!!((_b = this.logApiUrl) === null || _b === void 0 ? void 0 : _b.length)) {
fetch(this.logApiUrl, fetchOptions);
}
else {
console.warn("Missing value for logApiUrl");
}
};

@@ -180,0 +185,0 @@ return ClientLogger;

{
"name": "@arkitektum/client-logger",
"version": "1.0.2",
"version": "1.0.3",
"description": "",

@@ -5,0 +5,0 @@ "types": "./lib/cjs/types/index.d.ts",

@@ -1,1 +0,117 @@

# client-logger
# ClientLogger
## Installation
With Yarn:
```
yarn add @arkitektum/client-logger
```
With npm:
```
npm install @arkitektum/client-logger
```
## Getting started
### Using client-logger in a React app
index.js:
```js
import React from "react";
import ReactDOM from "react-dom/client";
import { ClientLogger } from "@arkitektum/client-logger";
import App from "App";
const apiUrl = "https://url.to.api";
const sourceMapUrl = `${document.currentScript.src}.map`;
const appName = "Application name";
ClientLogger.create(apiUrl, sourceMapUrl, appName).then((clientLogger) => {
const root = ReactDOM.createRoot(document.getElementById("root"));
root.render(<App clientLogger={clientLogger} />);
});
```
### Using client-logger with the Fetch API
```js
let logMessage;
fetch(apiUrl, fetchOptions)
.then((res) => {
response = res;
logMessage = {
statuscode: response?.status,
path: response?.url
};
return res.json();
})
.then((fetchedData) => {
const logMessages = [];
if (!fetchedData?.arrayWithStuff?.length) {
logMessages.push({
...logMessage,
level: "Warning",
message: "No stuff in array"
});
}
if (!fetchedData?.valueThatShouldBeTrue) {
logMessages.push({
...logMessage,
level: "Warning",
message: "Value that should be true is not true"
});
}
!!clientLogger.length && clientLogger.postLogData(logMessages);
return fetchedData;
})
.catch((error) => {
logMessage = {
level: "Error",
path: apiUrl
};
clientLogger.getLogMessageFromError(error, logMessage).then((logMessage) => {
clientLogger.postLogData([logMessage]);
});
});
```
## ClientLogger class
```ts
interface LogMessage {
appName?: string;
sessionId?: string;
clientInfo?: object;
level?: string;
message?: string;
originalPosition?: {
column: number;
line: number;
name: string;
source: string;
};
path?: string;
stackTrace?: string;
statuscode?: string;
correlationId?: string;
}
declare class ClientLogger {
logApiUrl: string;
sourceMapUrl: string;
sourceMapJson: string;
appName: string;
sessionId: string;
constructor(logApiUrl: string, sourceMapJson: string, appName: string);
private getSessionId;
static create(logApiUrl: string, sourceMapUrl: string, appName: string): Promise<ClientLogger>;
getLogMessageFromError(error: Error, logMessageProps: LogMessage): Promise<LogMessage>;
postLogData(logMessages: Array<LogMessage>): void;
}
```

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc