npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@cencosudx/metrics-client

v1.0.0

Published

This library was generated with [Nx](https://nx.dev).

Downloads

69

Readme

metrics-client

This library was generated with Nx.

Building

Run nx build metrics-client to build the library.

Running unit tests

Run nx test metrics-client to execute the unit tests via Jest.

Installation

Before being able to use the library to expose metrics, you need to install the library. Then:

$ npm install @cencosudx/metrics-client

Importing

To use this library, you need to import the following 3 components:

// Using ES6 imports
import { ITask, Module, publishMessage } from '@cencosudx/metrics-client';
  • ITask : Required model/structure for sending data to metrics module
  • Module : Available modules to integrate with the metrics module
  • publishMessage : Function by which the message/data will be published to the metrics module

How to use ?

To make the information of the module in use available to the metrics module, once the required components are imported, it is only necessary to define an ITask and publish the information through the publishMessage() function.

  // Defining the ITask
  const id = `globalizacion-${Module.FOUNDRATE}`;
  const task: ITask = {
    id, // generated id by region
    country: 'AR', // Country where the module is used
    module: Module.FOUNDRATE, // Module to be used for metrics
    business_unit: 'SM', // Business unit
    state: 'CREATED', // Status: 'CREATED' | 'COMPLETED' | 'EXPIRED' | 'IN_PROGRESS' | 'DELETED'
    created_at: new Date().getTime(), // Timestamp of metric creation
    updated_at: new Date().getTime(), // Timestamp of metric update
    store_id: '12345', // Store ID
    // metadata: The metadata to be sent depends on the module being implemented for metrics, as certain modules require at least some necessary fields, such as foundrate requiring at least the "origin" field and the ...content field is all the metadata or data required to be tracked in the metrics module
    metadata: {
      origin: 'ecommerce',
      ...content,
    },
  };
  // Publishing the message to the metrics module
  publishMessage(task);

Accessing to ITask props

There are some properties such as country, module, business_unit that are predefined values, in order to standardize the data that can be received in the metrics module and have a control point on which data to filter and thus avoid discrepancies between the data that each region manages

So if you need to add any other value to the mentioned fields, you should contact the globalization team to add and make the new data available