0.4.2 • Published 2 years ago

appinsights-logger v0.4.2

Weekly downloads
717
License
MIT
Repository
github
Last release
2 years ago

AppInsights logger

wrapper for AI setup, compatible with Azure Functions

Install

npm i appinsights-logger --save

Environment setup

Just set ENV variable APPINSIGHTS_INSTRUMENTATIONKEY

Set the AI_MESSAGE_NAMESPACE ENV variable to identify message source. Format is myCompany.AgileTeam.Repo

Usage:

const { trackEvent, trackException } = require('appinsights-logger')

trackEvent({ name: 'TEST', properties: { myProp: 'my value' } })

const ex = new Error('some error')
trackException({ exception: ex, properties: { myProp: 'my value' } })

Advanced usage

HTTP request tracking:

import { markDependency, measureDependency } from 'appinsights-logger'

const marker = markDependency('HTTP', 'GET /products')
try {
  const url = 'https://domain.com/api/products'
  const locations = await requestPromise(url)
  measureDependency(marker, url)
} catch(ex) {
  measureDependency(marker, url, false)
  // could also trackException(ex) here
}

Cosmos query tracking:

dependency tracking is useful for measuring latency of remote calls (SQL, HTTP) and also failures

import { markDependency, measureDependency } from 'appinsights-logger'

const marker = markDependency('cosmos', 'query collection')
try {
  const sql = 'select top 100 from c'
  const locations = await cosmosDb.items.query(sql) // pseudo-code cosmos query
  measureDependency(marker, sql)
} catch(ex) {
  measureDependency(marker, sql, false)
  // could also trackException(ex) here
}

Debug Event tracking

customEvents are powerful because you can query the logs by the customDimensions object

import { trackDebugEvent } from from 'appinsights-logger'

// This 'debug' event will only log if the DEBUG_INSIGHTS="true" env var is set
trackDebugEvent({ name: 'new order',  properties: { order }, measurements: { productCount: order.products.length } }) 

Run E2E Test

cp .env.example .env

fill in .env with App Insight key

npm run build
npm test
0.4.1

2 years ago

0.4.2

2 years ago

0.4.0

2 years ago

0.3.0

3 years ago

0.3.5

3 years ago

0.3.2

3 years ago

0.3.1

3 years ago

0.3.4

3 years ago

0.3.3

3 years ago

0.2.0

3 years ago

0.1.1

4 years ago

0.1.0

4 years ago

0.0.6

4 years ago

0.0.5

4 years ago

0.0.4

4 years ago

0.0.3

4 years ago

0.0.2

4 years ago

0.0.1

4 years ago