-
Notifications
You must be signed in to change notification settings - Fork 5
NoDrop User Guide
This page describes the basic usage of the nodrop command-line interface.
NoDrop captures system events using a kernel module and processes them with a user-space monitor. Users can run NoDrop directly to collect events or attach Lua Chisels for custom analysis.
The nodrop CLI currently supports the following commands:
nodrop start
nodrop start <lua_filename>
nodrop stop
nodrop record [compress | normal | none]Additional commands may be added in future releases.
To start NoDrop:
nodrop startBy default, NoDrop will capture events but will not perform any analysis unless a Lua script is provided.
You can start NoDrop with a Lua script:
nodrop start <lua_filename>Example:
nodrop start ./count_syscall.luaIn this mode:
- The Lua script will receive captured events
- Custom logic can be executed inside the script
- Events can be filtered, counted, or exported
See Chisels Documentation for details about writing Lua scripts.
To stop monitoring:
nodrop stopThis command will:
- Stop event collection
- Terminate the user-space monitor
NoDrop can optionally record captured events to disk.
The recording mode is controlled by:
nodrop record [compress | normal | none]nodrop record noneNo event files will be written.
nodrop record normalCaptured events will be stored in raw NoDrop buffer format: .buf
This format contains the original binary event stream.
nodrop record compressCaptured buffers will be compressed using gzip and stored as: .buf.gz
This reduces disk usage when recording large numbers of events.
By default, recorded files are stored in: /tmp/nodrop/
This directory can be changed during compilation using the CMake configuration options described in the installation guide.
Each file is named using the format:
tid-timestamp
Example:
/tmp/nodrop/23145-17110211234123.buf
Where:
- tid = thread ID
- timestamp = event timestamp (nanoseconds)
A typical NoDrop workflow may look like this:
Start monitoring:
nodrop startEnable recording:
nodrop record normalStop monitoring:
nodrop stop