@stack-spot/portal-observability
TypeScript icon, indicating that this package has built-in type declarations

0.4.2 • Public • Published

Observability

Implements the general observability for a Stackspot web application.

Datadog

datadogInit({ applicationId, clientToken, env, service })

Use this function when you want to init Datadog. Usually we use this function on App.tsx.

If you are using Portal MFE. You don't need to use this.

useDatadogSetUser()

Use this function when you want to set user on Datadog. Usually we use this function on main.tsx.

If you are using Portal MFE. You don't need to use this.

trackError(error: unknown, context?: object | undefined)

Use this function when you want to set errors on Datadog.

import { trackError } from '@stack-spot/portal-observability'

<RawLayout
  header={<Header />}
  menuSections={<SectionMenu />}
  menuContent={<ContentMenu />}
  onError={(error) => trackError(error, { scope: 'error-boundary' })}
>
  {content}
</RawLayout>

trackPageLoaded(routeDetails: EventPageDetails)

Use this function when you want to track pages on Datadog.

export interface EventPageDetails {
  pathNameWithParams: string,
  searchParamsWithVariableName?: string,
  searchParams?: string,
  routeParams?: Record<string, string | string[] | undefined>,
}

getRouteForAnalytics({ route, params }: { route: Record<string, any>, params: Record<string, any> })

This function generates information to about route, usually we use this information combined with trackPageLoaded function.

import { useRouteData } from 'navigation'
import { getRouteForAnalytics, trackPageLoaded } from '@stack-spot/portal-observability'

const routeInfo = useRouteData()

useEffect(() => {
    const routeForAnalytics = getRouteForAnalytics(routeInfo)
    trackPageLoaded(routeForAnalytics)
  }, [routeInfo.route.$path, routeInfo.params])

Readme

Keywords

none

Package Sidebar

Install

npm i @stack-spot/portal-observability

Weekly Downloads

128

Version

0.4.2

License

none

Unpacked Size

25.5 kB

Total Files

10

Last publish

Collaborators

  • renanrodrigueszup
  • carolinegoncalveszup
  • tiagobalbinodesazup
  • larissacostazup
  • magno.lemos
  • hiltonpaulozup
  • tiagoperesfr
  • arthurbleilzup
  • tarcisiogc
  • lucasgarciazup
  • rafamsilva-zup
  • leonardo.palis
  • caiorezendezup
  • nataliecrissilva