# web-logger-js

> a js library for web application store log and send log

Latest version **0.0.6** (published 2024-05-08) · ISC license · 0 weekly downloads

## Install

```sh
npm install web-logger-js
pnpm add web-logger-js
yarn add web-logger-js
bun add web-logger-js
```

## Health

**Score 20/100 (F)** — status: abandoned.

Positive: esm support; no vulnerabilities.

Warnings: low downloads; no types; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.0.6 |
| Published | 2024-05-08 |
| First published | 2024-05-08 |
| Weekly downloads | 0 |
| License | ISC |
| TypeScript types | none |
| Module format | ESM + CommonJS |
| Dependencies | 1 |
| Unpacked size | 137.7 KB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | DusuWen |
| Maintainers | drlouie |

## Links

- npm: https://www.npmjs.com/package/web-logger-js
- Repository: https://github.com/DusuWen/web-logger-js
- Homepage: https://github.com/DusuWen/web-logger-js#readme
- Issues: https://github.com/DusuWen/web-logger-js/issues
- npm.io page: https://npm.io/package/web-logger-js

## Dependencies (1)

- [js-encrypt](https://npm.io/package/js-encrypt.md) ^2.3.4

## Recent versions

- 0.0.6 (latest) — 2024-05-08
- 0.0.5 — 2024-05-08
- 0.0.4 — 2024-05-08
- 0.0.3 — 2024-05-08
- 0.0.2 — 2024-05-08
- 0.0.1 — 2024-05-08

## README

# web-logger
a js library for web application store log and send log

### usage
#### option one
```bash
git clone
```
```bash
npm i
```
```bash
npm run build
```
copy dist/web-logger-js.js to your project

#### option two
```bash
npm i web-logger-js
```
```javascript
import Logger from "web-logger-js"
```


#### notice
web-logger required token before send logs to your backend server，web-logger built-in sending enqueue.

### setup

in vue project main.js

```javascript
import Vue from 'vue';
import { createRouter } from "vue-router"
import Logger from "web-logger-js"

const router = createRouter()
const logger = new Logger({
  saveToCloud: true, 
  sourceType: "h5", 
  projectName: "xxx", 
  env: "test", 
  encrypt: true, 
  reportUrl: "http://xxx.xxxx.xxxx", 
  router: router
})
Vue.prototype.$logger = logger;
```

in anywhere

```vue
<script>
export default {
    created() {
      this.$logger.setToken("Bearer xxxxxx")
      this.$logger.info("app created")
    },
    mounted() {
      this.$logger.info("app mounted")
    }
};
</script>
```

### options

```javascript
const option = {
	saveToCloud: false, // enable upload log to server，default false
	sourceType: "web", // web/h5
	projectName: "", // current project name,
	env: "test", // current project env
	encrypt: false, // enable 1024 RSA encrypt，default false
	reportUrl: '', // logs server url
	router: "", // vue-router
}
```

### log message
message store in localstorage looks like
```json
{
  "message": "",
  "level": "",
  "timestamp": "",
  "stacktrace": "",
  "userAgent": "",
  "projectName": "",
  "fullPath": "",
  "location": ""
}
```

### API

* setToken (if you need send to your server)

```javascript
logger.setToken("Bearer xxxxx")
```

* info

```js
logger.info("text")
```

* error

```js
logger.error(e)
```

---
_Source: https://npm.io/package/web-logger-js · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
