LogFlake Client JS is a JavaScript client library for interacting with the LogFlake logging platform. It allows you to initialize logging, send logs and exceptions, and measure performance in your applications.
Install the package:
yarn add @logflake/client
Import the necessary functions and initialize the client with your application ID and server URL:
import { initialize } from '@logflake/client';
initialize('YOUR_APP_ID', 'YOUR_SERVER_URL', {
correlation: () => 'correlation-id', // Optional correlation function or string
enableCompression: true, // Optional, default is true
hostname: 'example.com', // Optional, default is window.location.hostname
});
Send a log message with optional parameters:
import { LogLevels, sendLog } from '@logflake/client';
sendLog('Your log message', {
level: LogLevels.INFO, // Optional log level, default is 'DEBUG'
correlation: 'correlation-id', // Optional
hostname: 'example.com', // Optional
params: { key: 'value' }, // Optional additional parameters
});
Capture and send exceptions to LogFlake:
import { sendException } from '@logflake/client';
try {
// Your code that may throw an error
} catch (error) {
sendException(error, {
correlation: 'correlation-id', // Optional
hostname: 'example.com', // Optional
params: { key: 'value' }, // Optional additional parameters
});
}
Measure the performance of a code block:
import { measurePerformance } from '@logflake/client';
const dispose = measurePerformance('operation-name');
// Your operation code here
dispose()?.then((duration) => {
console.log(`Operation took ${duration}ms`);
});
When initializing the client, you can provide the following options:
correlation
: A function or value used to generate a correlation ID. Default isundefined
.enableCompression
: Enables compression of logs. Default istrue
.hostname
: The hostname associated with the logs. Default iswindow.location.hostname
.
The following log levels are available:
DEBUG
INFO
WARNING
ERROR
FATAL
EXCEPTION
Use these levels to categorize your log messages appropriately.
This project is licensed under the MIT License.