https://github.com/nodesource/ah-net
Tracks async hook events related to network operations.
https://github.com/nodesource/ah-net
Last synced: 10 months ago
JSON representation
Tracks async hook events related to network operations.
- Host: GitHub
- URL: https://github.com/nodesource/ah-net
- Owner: nodesource
- License: mit
- Created: 2017-03-09T09:33:09.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2017-10-26T17:28:26.000Z (about 8 years ago)
- Last Synced: 2025-01-18T13:28:22.539Z (12 months ago)
- Language: JavaScript
- Size: 1.16 MB
- Stars: 1
- Watchers: 4
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ah-net [](http://travis-ci.org/nodesource/ah-net)
Tracks async hook events related to network operations.
## Installation
npm install ah-net
## [API](https://nodesource.github.io/ah-net)
### NetworkActivityCollector
Instantiates a NetworkActivityCollector.
Most of the actual processing of resources is performed by th @see
NetworkResourceProcessor.
Extends [ActivityCollector](https://github.com/nodesource/ah-collector) and thus
exposes the same [public
API](https://github.com/nodesource/ah-collector#api) with added
functionality.
**Parameters**
- `$0.start` **[Array](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array)<[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)>** the start time of the process, i.e. the result of `process.hrtime()`
- `$0.stackCapturer` **StackCapturer?** [see ah-stack-capturer](https://github.com/nodesource/ah-stack-capturer) which
configures how and when stacks traces are captured and processed.By default a StackCapturer is used that captures stacks for all events for
file system related types: `FSREQWRAP`, `FSREQUESTWRAP` and some others like
`TickObject`s that also are related, i.e. if they contain information related
to streams. (optional, default `StackCapturer`)
- `$0.bufferLength` **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)?** determines how many elements of Buffers are
captured. By default not Buffer data is captured. (optional, default `0`)
- `$0.stringLength` **[number](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number)?** determines how much of each string is
captured. By default no string data is captured. (optional, default `0`)
- `$0.captureArguments` **[boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)?** if `true` arguments of callbacks
are captured when they are processed. (optional, default `false`)
- `$0.captureSource` **[boolean](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean)?** if `true` the source code of callbacks
is captured when they are processed. (optional, default `false`)
### NetworkResourceProcessor
**Extends ResourceProcessor**
The Network processor grabs information off the network socket itself,
the server if present.
In the case of an http request the HTTPPARSR resource is present.
It has a lot of useful properties attached to it, including incoming and
outgoing http messages.
Below is a condensed outline of the HTTPARSER properties that are most relevant:
```js
{
socket: {
_httpMessage {
_header
, statusMessage
, statusCode
, _headerSent
, finished
...
}
, _handle: { fd, reading, _parent }
, server: { _connectionKey }
}
, incoming {
httpVersion*
, headers: { host, connection }
, upgrade
, url
, method
, statusCode
, statusMessage
}
}
```
## License
MIT