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

@nsshunt/stspublisherserver

v3.0.4

Published

STS Publisher Server. Provide instrument publishing capabilities within a nodejs server context. Use stspublisheragent for a browser context.

Downloads

46

Readme

stspublisherserver

STS Publisher - Server

To add a new entity type, the following needs to happen

decide on the new structure and levels, e.g. technology/subtechnology/lambdafunction/instance constraint: the current solution has been setup for 4 levels

future: Could potentially re-factor to handle any number of levels

--- context structure and default instruments ---------------------------------------

create a context interface for the new entity stspublisherserver/src/publishers/publisher.ts

create the default instrument list stspublisherserver/src/publishers/publishInstrumentControllerV2.ts

--- redis processing ----------------------------------------------------------------

define time series prefix time series data are values that are recorded with the current datetime stamp. The series will exists within a defined time window. Old values are removed from the time series.

define instant data prefix instant data are values that represent current near-real time values. This data is always overwritten with the current versions of instruments.

define index for time series index for time series values. Keys are created for query purposes.

define index for instant data index for instant data values. Keys are created for query purposes.

All prefix values declared in:- stsinstrumentmanager/src/redisInstrumentProcessorBase.ts (*) these should be specified with a new object that defines all this setup-meta-data

Define field names, guage types and data types within a IFieldRecord array stsinstrumentmanager/src/redisInstrumentProcessorBase.ts (*) these should be specified with a new object that defines all this setup-meta-data

Handle object types better than 'memory' in IsString stsinstrumentmanager/src/redisInstrumentProcessorBase.ts

() Add indexes and prefix defined above to drop and create the indexes stsinstrumentmanager/src/redisInstrumentProcessorLeader.ts () these should be specified with a new object that defines all this setup-meta-data

() RemoveOldHashRecords updated to include new index time series stsinstrumentmanager/src/redisInstrumentProcessorLeader.ts () these should be specified with a new object that defines all this setup-meta-data

() Create a new GetPath function to return formatted path for new entity stsinstrumentmanager/src/redisInstrumentProcessorWorker.ts () these should come at the root level of a new object that defines all this setup-meta-data

() Update ProcessInstrumentPayload to handle the new entity. () These needs to be refactored based on the new object structure definition from above stsinstrumentmanager/src/redisInstrumentProcessorWorker.ts

() Update GetCompleteRedisDataExByLevel to handle the new entity. () New object structure processing required. stsinstrumentmanager/src/redisInstrumentProcessorWorker.ts

Update GetRedisDataExByLevel need to be able to handle object types better than hard coding for 'memory' stsinstrumentmanager/src/redisInstrumentProcessorWorker.ts Update all the methods such as GetServiceRootLevel to have one method based on the object definition stsinstrumentmanager/src/redisInstrumentProcessorWorker.ts The setup object could potentially define the methods

--- express http server processing ----------------------------------------------------------------

change stsmonitorroute to use :level1, :level2, etc. rather than app names stsinstrumentmanager/src/routes/stsmonitorroute.ts

change stsmonitorcontrollerV3 to use a config option for process influxdb (change stsconfig) stsinstrumentmanager/src/routes/stsmonitorroute.ts

change metricscontroller to use new methods updated from the redis sections above also update influxdb gets methods to handle all types - just provide stubs if required for non influxdb supported types stsinstrumentmanager/src/routes/metricscontroller.ts

update GetLogMessagesLambdaInstanceThread methods to handle kafka message processing stsinstrumentmanager/src/routes/metricscontroller.ts

--- socketio processing -------------------------------------------------------------------------

Define new interface types stssocketio-client/src/commonTypes

Update ParseModelNode methds (3) to use new interface types stssocketio-client/src/observabilitymodelutils

Update GetInfluxDBModelLambda methods (3) to use output types - these should come from the config object in the notes above stssocketio-client/src/observabilitymodelutils

Update InvokeRESTAPI to invoke correct restapis stssocketio-client/src/observabilityrestapisubscriber

Update ObservabilitySubscriptionManager to handle new type stssocketio-client/src/observabilitysubscriptionmanager

--- uiterm processing -------------------------------------------------------------------------

Update GetViewTemplate to support new type stsuiterm/src/uisubscription/uicontrollersubscriptionbase

update uicontrollerlanding to support new type stsuiterm/src/uisubscription/uicontrollerlanding

create new view class to handle all levels of new type. If 4 levels, 3 views will need to be defined. stsuiterm/src/uisubscription/uicontroller<>

Update appsingle to include the new routes for the 3 new views stsuiterm/src/appsingle

Update uicontrollertemplates to crate the new handlebars templates for the new type stsuiterm/src/uicontrollertemplates