Skip to content

Retrieve metrics about popular modules automatically

License

Notifications You must be signed in to change notification settings

keymetrics/deep-metrics

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Appmetrics tuned

var monitoring = require('../..').start()
monitoring.ee.on('socketio', function(data) {
  console.log(data)
})

API: Dependency Events (probes)

Event: 'http'/'https'

Emitted when a HTTP/HTTPS request is made of the application.

  • data (Object) the data from the HTTP(S) request:
    • time (Number) the milliseconds when the request was made. This can be converted to a Date using new Date(data.time).
    • method (String) the HTTP(S) method used for the request.
    • url (String) the URL on which the request was made.
    • duration (Number) the time taken for the HTTP(S) request to be responded to in ms.
    • header (String) the response header for the HTTP(S) request.
    • contentType (String) the content type of the HTTP(S) request.
    • requestHeader (Object) the request header for HTTP(S) request.

Event: 'http-outbound'/'https-outbound'

Emitted when the application makes an outbound HTTP/HTTPS request.

  • data (Object) the data from the HTTP(S) request:
    • time (Number) the milliseconds when the request was made. This can be converted to a Date using new Date(data.time).
    • method (String) the HTTP(S) method used for the request.
    • url (String) the URL on which the request was made.
    • contentType (String) the HTTP(S) response content-type.
    • statusCode (String) the HTTP response status code.
    • duration (Number) the time taken for the HTTP(S) request to be responded to in ms.
    • 'requestHeaders' (Object) the HTTP(S) request headers.

Event: 'leveldown'

Emitted when a LevelDB query is made using the leveldown module.

  • data (Object) the data from the LevelDB query:
    • time (Number) the time in milliseconds when the LevelDB query was made. This can be converted to a Date using new Date(data.time).
    • method (String) The leveldown method being used.
    • key (Object) The key being used for a call to get, put or del (Undefined for other methods)
    • value (Object) The value being added to the LevelDB database using the put method (Undefined for other methods)
    • opCount (Number) The number of operations carried out by a batch method (Undefined for other methods)
    • duration (Number) the time taken for the LevelDB query to be responded to in ms.

Event: 'loopback-datasource-juggler'

Emitted when a function is called on the loopback-datasource-juggler module

  • data (Object) the data from the loopback-datasource-juggler event:
    • time (Number) the time in milliseconds when the event occurred. This can be converted to a Date using new Date(data.time)
    • method (String) the function the juggler has executed
    • duration (Number) the time taken for the operation to complete.

Event: 'memcached'

Emitted when a data is stored, retrieved or modified in Memcached using the memcached module.

  • data (Object) the data from the memcached event:
    • time (Number) the milliseconds when the memcached event occurred. This can be converted to a Date using new Date(data.time)
    • method (String) the method used in the memcached client, eg set, get, append, delete, etc.
    • key (String) the key associated with the data.
    • duration (Number) the time taken for the operation on the memcached data to occur.

Event: 'mongo'

Emitted when a MongoDB query is made using the mongodb module.

  • data (Object) the data from the MongoDB request:
    • time (Number) the milliseconds when the MongoDB query was made. This can be converted to a Date using new Date(data.time)
    • query (String) the query made of the MongoDB database.
    • duration (Number) the time taken for the MongoDB query to be responded to in ms.
    • method (String) the executed method for the query, such as find, update.
    • collection (String) the MongoDB collection name.

Event: 'mqlight'

Emitted when a MQLight message is sent or received.

  • data (Object) the data from the MQLight event:
    • time (Number) the time in milliseconds when the MQLight event occurred. This can be converted to a Date using new Date(data.time).
    • clientid (String) the id of the client.
    • data (String) the data sent if a 'send' or 'message', undefined for other calls. Truncated if longer than 25 characters.
    • method (String) the name of the call or event (will be one of 'send' or 'message').
    • topic (String) the topic on which a message is sent/received.
    • qos (Number) the QoS level for a 'send' call, undefined if not set.
    • duration (Number) the time taken in milliseconds.

Event: 'mqtt'

Emitted when a MQTT message is sent or received.

  • data (Object) the data from the MQTT event:
    • time (Number) the time in milliseconds when the MQTT event occurred. This can be converted to a Date using new Date(data.time).
    • method (String) the name of the call or event (will be one of 'publish' or 'message').
    • topic (String) the topic on which a message is published or received.
    • qos (Number) the QoS level for the message.
    • duration (Number) the time taken in milliseconds.

Event: 'mysql'

Emitted when a MySQL query is made using the mysql module.

  • data (Object) the data from the MySQL query:
    • time (Number) the milliseconds when the MySQL query was made. This can be converted to a Date using new Date(data.time).
    • query (String) the query made of the MySQL database.
    • duration (Number) the time taken for the MySQL query to be responded to in ms.

Event: 'oracle'

Emitted when a query is executed using the oracle module.

  • data (Object) the data from the Oracle query:
    • time (Number) the milliseconds when the Oracle query was made. This can be converted to a Date using new Date(data.time).
    • query (String) the query made of the Oracle database.
    • duration (Number) the time taken for the Oracle query to be responded to in ms.

Event: 'oracledb'

Emitted when a query is executed using the oracledb module.

  • data (Object) the data from the OracleDB query:
    • time (Number) the milliseconds when the OracleDB query was made. This can be converted to a Date using new Date(data.time).
    • query (String) the query made of the OracleDB database.
    • duration (Number) the time taken for the OracleDB query to be responded to in ms.

Event: 'postgres'

Emitted when a PostgreSQL query is made to the pg module.

  • data (Object) the data from the PostgreSQL query:
    • time (Number) the milliseconds when the PostgreSQL query was made. This can be converted to a Date using new Date(data.time).
    • query (String) the query made of the PostgreSQL database.
    • duration (Number) the time taken for the PostgreSQL query to be responded to in ms.

Event: 'redis'

Emitted when a Redis command is sent.

  • data (Object) the data from the Redis event:
    • time (Number) the time in milliseconds when the redis event occurred. This can be converted to a Date using new Date(data.time).
    • cmd (String) the Redis command sent to the server or 'batch.exec'/'multi.exec' for groups of command sent using batch/multi calls.
    • duration (Number) the time taken in milliseconds.

Event: 'riak'

Emitted when a Riak method is called using the basho-riak-client module.

  • data (Object) the data from the Riak event:
    • time (Number) the time in milliseconds when the riak event occurred. This can be converted to a Date using new Date(data.time).
    • method (String) the Riak method called.
    • options (Object) the options parameter passed to Riak.
    • command (Object) the command parameter used in the execute method.
    • query (String) the query parameter used in the mapReduce method.
    • duration (Number) the time taken in milliseconds.

Event: 'socketio'

Emitted when WebSocket data is sent or received by the application using socketio.

  • data (Object) the data from the socket.io request:
    • time (Number) the milliseconds when the event occurred. This can be converted to a Date using new Date(data.time).
    • method (String) whether the event is a broadcast or emit from the application, or a receive from a client .
    • event (String) the name used for the event.
    • duration (Number) the time taken for event to be sent or for a received event to be handled.

Event: 'strong-oracle'

Emitted when a query is executed using the strong-oracle module.

  • data (Object) the data from the Strong Oracle query:
    • time (Number) the milliseconds when the Strong Oracle query was made. This can be converted to a Date using new Date(data.time).
    • query (String) the query made of the database.
    • duration (Number) the time taken for the Strong Oracle query to be responded to in ms.

API: Requests

Event: 'request'

Requests are a special type of event emitted by appmetrics. All the probes named above can also create request events if requests are enabled. Howver requests are nested within a root incoming request (usually http). Request events are disabled by default.

  • data (Object) the data from the request:
    • time (Number) the milliseconds when the request occurred. This can be converted to a Date using new Date(data.time).
    • type (String) The type of the request event. This is the name of the probe that sent the request data, e.g. http, socketio etc.
    • name (String) The name of the request event. This is the request task, eg. the url, or the method being used.
    • request (Object) the detailed data for the root request event:
      • type (String) The type of the request event. This is the name of the probe that sent the request data, e.g. http, socketio etc.
      • name (String) The name of the request event. This is the request task, eg. the url, or the method being used.
      • context (Object) Additional context data (usually contains the same data as the associated non-request metric event).
      • stack (String) An optional stack trace for the event call.
      • children (Array) An array of child request events that occurred as part of the overall request event. Child request events may include function trace entries, which will have a type of null.
      • duration (Number) the time taken for the request to complete in ms.
    • duration (Number) the time taken for the overall request to complete in ms.

About

Retrieve metrics about popular modules automatically

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •