https://github.com/blackglory/logger-js
🌲 The JavaScript SDK for Logger
https://github.com/blackglory/logger-js
browser esm library nodejs npm-package typescript
Last synced: 3 months ago
JSON representation
🌲 The JavaScript SDK for Logger
- Host: GitHub
- URL: https://github.com/blackglory/logger-js
- Owner: BlackGlory
- License: mit
- Created: 2020-12-05T18:40:19.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2023-12-17T15:10:12.000Z (over 2 years ago)
- Last Synced: 2025-02-04T07:17:38.525Z (over 1 year ago)
- Topics: browser, esm, library, nodejs, npm-package, typescript
- Language: TypeScript
- Homepage: https://www.npmjs.com/package/@blackglory/logger-js
- Size: 1.81 MB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# logger-js
## Install
```sh
npm install --save @blackglory/logger-js
# or
yarn add @blackglory/logger-js
```
## API
### LoggerClient
```ts
interface ILoggerClientOptions {
server: string
basicAuth?: {
username: string
password: string
}
keepalive?: boolean
heartbeat?: IHeartbeatOptions
timeout?: number
}
interface ILoggerClientRequestOptions {
signal?: AbortSignal
keepalive?: boolean
timeout?: number | false
}
export interface ILoggerClientFollowOptions extends ILoggerClientRequestOptions {
since?: LogId
heartbeat?: IHeartbeatOptions
}
interface IHeartbeatOptions {
timeout: number
}
interface ILoggerConfig extends JSONObject {
timeToLive: number | null
limit: number | null
}
type LogId = `${number}-${number}`
interface IRange {
order: Order
from?: LogId
to?: LogId
skip?: number
limit?: number
}
enum Order {
Asc = 'asc'
, Desc = 'desc'
}
interface ILog {
id: LogId
value: JSONValue
}
class LoggerNotFound extends CustomError {}
class LoggerClient {
constructor(options: ILoggerClientOptions)
getAllLoggerIds(options?: ILoggerClientRequestOptions): Promise
setLogger(
loggerId: string
, config: ILoggerConfig
, options?: ILoggerClientRequestOptions
): Promise
getLogger(
loggerId: string
, options?: ILoggerClientRequestOptions
): Promise
removeLogger(
loggerId: string
, options?: ILoggerClientRequestOptions
): Promise
log(
loggerId: string
, value: JSONValue
, options?: ILoggerClientRequestOptions
): Promise
/**
* @throws {LoggerNotFound}
*/
follow(
loggerId: string
, options?: ILoggerClientFollowOptions
): AsyncIterableIterator
/**
* @throws {LoggerNotFound}
*/
getLogs(
loggerId: string
, logIds: LogId[]
, options?: ILoggerClientRequestOptions
): Promise>
removeLogs(
loggerId: string
, logIds: LogId[]
, options?: ILoggerClientRequestOptions
): Promise
/**
* @throws {LoggerNotFound}
*/
queryLogs(
loggerId: string
, range: IRange
, options?: ILoggerClientRequestOptions
): Promise
clearLogs(
loggerId: string
, range: IRange
, options?: ILoggerClientRequestOptions
): Promise
}
class LoggerNotFound extends CustomError {}
```