Getting started

From an empty directory to a running backend with an agent reporting into it.

ProvCollector is developed as a superproject: one repository that carries no application code of its own, pinning five component repositories as git submodules and holding the solution file, the Docker Compose topology and the shared NuGet configuration that ties them together.

  • Installation

    Clone with submodules, satisfy the toolchain, restore from the package feed, and build the whole solution.

  • Quick start

    Bring up the Compose stack, confirm the topics exist, and run your first traversal against the graph.

  • Deploying agents

    Build a configured installer for Windows or Linux and get a host reporting into the stack.

Requirements

Requirement Notes
.NET 10 SDK
Docker Compose This is the easiest way to deploy ProvCollector; you can also deploy manually
WiX Toolset Required to build the Windows MSI installers
Rust Required to build the Windows driver and Linux installers
cargo-make Required to build the Windows driver
Windows SDK & WDK Required to build the Windows driver

The ProvCollector.Common libraries are consumed as NuGet packages, not project references. For development, you will likely want to change this to use project references instead.

Repository layout

Path Contents
ProvCollector.Common/ Shared libraries
ProvCollector.Agent/ Collection agents plus the Windows registry driver
ProvCollector.Backend/ Event processor and database writer
ProvCollector.Analysis/ Query, visualisation and reporting tools
ProvCollector.Management/ Deployment management, updater and installers
ProvCollector.slnx Solution spanning every project in every submodule
docker-compose.yml Backend topology: Redpanda, PostgreSQL, and the .NET services
nuget.config ProvCollector package sources

Table of contents


Back to top

ProvCollector — system-provenance collection, storage and analysis. Documentation built with Jekyll and Just the Docs.