dopple-sdk
TypeScript icon, indicating that this package has built-in type declarations

0.2.0 • Public • Published

Dopple SDK

The Dopple SDK is a TypeScript library designed to facilitate interaction with the Dopple API. It allows you to log events to Dopple with ease, providing type safety and a straightforward API.

Table of Contents

Installation

Install the SDK via npm:

npm install dopple-sdk

Usage

Initialization

To use the Dopple SDK, you need to initialize the DoppleClient with your APP ID.

import { DoppleClient } from 'dopple-sdk';

const doppler = new DoppleClient({ appId: 'YOUR_APP_ID' });

Logging Events

Once the client is initialized, you can log events by calling the logEvent method.

import { DoppleClient } from './dist';

const doppler = new DoppleClient({ appId: 'YOUR_APP_ID' });

doppler.log('This is an info message');
doppler.info('This is an info message');
doppler.debug('This is a debug message');
doppler.error('This is an error message');
doppler.fatal('This is a fatal message');

API

DoppleClient

constructor(config: DoppleClientConfig) Creates a new instance of DoppleClient.

  • config (DoppleClientConfig): The configuration object.
    • appId (string): Your APP ID.
    • baseUrl (string, optional): The base URL for the API. Defaults to 'https://laas-api.up.railway.app/v1'.

info(text: string, additionalData?: any): void Logs an info level event.

  • text (string): The text to log.
  • additionalData (any, optional): Any additional data to include in the log.

debug(text: string, additionalData?: any): void Logs a debug level event.

  • text (string): The text to log.
  • additionalData (any, optional): Any additional data to include in the log.

error(text: string, additionalData?: any): void Logs an error level event.

  • text (string): The text to log.
  • additionalData (any, optional): Any additional data to include in the log.

fatal(text: string, additionalData?: any): void Logs a fatal level event.

  • text (string): The text to log.
  • additionalData (any, optional): Any additional data to include in the log.

logEvent(event: LogEvent): Promise<void> Logs an event to Dopple.

  • event (LogEvent): The event object to log.

LogEvent

The LogEvent interface defines the structure of a log event.

export interface LogEvent {
  text: string;        // The text to log
  level: 'info' | 'warn' | 'error';  // The level of the log
  context?: Record<string, any>;  // JSON string of custom fields that are not or cannot go in  the message and provide more context about the event
	tags?: string[]; //  Array of strings to provide more fine-tuned indexing
	ip?: string; //  Remote IP Address of the machine (optional but the API will attempt to resolve an ip address for each request)
}

Configuration

The DoppleClientConfig interface defines the configuration for DoppleClient.

export interface DoppleClientConfig {
  appId: string;          // Your APP ID
  baseUrl?: string;       // Optional base URL for the API
}

Contributing

Contributions are welcome! Please follow these steps to contribute:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-branch).
  3. Make your changes.
  4. Commit your changes (git commit -m 'Add some feature').
  5. Push to the branch (git push origin feature-branch).
  6. Open a pull request.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Readme

Keywords

none

Package Sidebar

Install

npm i dopple-sdk

Weekly Downloads

1

Version

0.2.0

License

ISC

Unpacked Size

14.3 kB

Total Files

19

Last publish

Collaborators

  • usedopple