mirror of
https://github.com/hanzoai/node-dtrace-provider.git
synced 2026-09-23 23:48:45 +00:00
Add release information for 0.2.5
This commit is contained in:
@@ -3,6 +3,13 @@ dtrace-provider - Changes
|
||||
|
||||
## HISTORY
|
||||
|
||||
* 0.2.5:
|
||||
Add "json" probe argument type, automatically serialising objects as JSON
|
||||
Trust npm to set PATH appropriately when invoking node (reported by Dave Pacheco)
|
||||
libusdt update - allow provider memory to be freed (reported by Bryan Cantrill)
|
||||
Build libusdt with gmake by default (reported by Keith Wesolowski)
|
||||
Turn the various scripts in test/ into a TAP-based testsuite.
|
||||
|
||||
* 0.2.4:
|
||||
Improve Node architecture detection to support 0.6.x, and respect
|
||||
npm's prefix when choosing a node binary to use (reported by Trent Mick)
|
||||
|
||||
@@ -67,6 +67,30 @@ enabled. This means you can do more expensive work to gather arguments.
|
||||
|
||||
The maximum number of arguments supported is 32.
|
||||
|
||||
Available argument types are "int", for integer numeric values,
|
||||
"char *" for strings, and "json" for objects rendered into JSON strings.
|
||||
|
||||
Arguments typed as "json" will be created as "char *" probes in
|
||||
DTrace, but objects passed to these probe arguments will be
|
||||
automatically serialized to JSON before being passed to DTrace. This
|
||||
feature is best used in conjunction with the json() D subroutine, but
|
||||
is available whether or not the platform supports it.
|
||||
|
||||
# create a json probe:
|
||||
|
||||
var dtp = d.createDTraceProvider("nodeapp");
|
||||
var p1 = dtp.addProbe("j1", "json");
|
||||
dtp.enable();
|
||||
p1.fire(function() { return { "foo" => "bar" }; });
|
||||
|
||||
# on a platform supporting json():
|
||||
|
||||
$ sudo dtrace -Z -n 'nodeapp*:::j1{ this->j = copyinstr(arg0); \
|
||||
trace(json(this->j, "foo")) }'
|
||||
dtrace: description 'nodeapp$target:::j1' matched 0 probes
|
||||
CPU ID FUNCTION:NAME
|
||||
0 68712 j1:j1 bar
|
||||
|
||||
## PLATFORM SUPPORT
|
||||
|
||||
This libusdt-based Node.JS module supports 64 and 32 bit processes on
|
||||
@@ -84,12 +108,6 @@ install this module without building libusdt, with a stub no-op
|
||||
implementation provided for compatibility. This allows cross-platform
|
||||
npm modules to embed probes and include a dependency on this module.
|
||||
|
||||
## LIMITATIONS
|
||||
|
||||
The data types supported are "int" and "char *". Support for
|
||||
structured types is planned, depending on support from the host DTrace
|
||||
implementation for the necessary translators.
|
||||
|
||||
## CAVEATS
|
||||
|
||||
There is some overhead to probes, even when disabled. Probes are
|
||||
|
||||
+1
-1
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name" : "dtrace-provider",
|
||||
"version" : "0.2.4",
|
||||
"version" : "0.2.5",
|
||||
"description" : "Native DTrace providers for node.js applications",
|
||||
"keywords" : ["dtrace"],
|
||||
"homepage" : "https://github.com/chrisa/node-dtrace-provider#readme",
|
||||
|
||||
Reference in New Issue
Block a user