LICENSEWARE Collector Logo

LICENSEWARE Collector

Product Overview

What is LICENSEWARE Collector?
A free lightweight agent that collects system and software inventory data from your servers and securely transmits it to the LICENSEWARE ™ platform for software license compliance analysis.

Operating System Compatibility

Linux

  • x86_64 (64-bit) only
  • systemd required
  • RHEL, Ubuntu, Debian, etc.

Windows

  • x86_64 (64-bit) only
  • Windows 7 SP1+ (Desktop)
  • Windows Server 2012 R2+

macOS

  • Intel & Apple Silicon
  • macOS 10.15+
  • launchd service

Network Requirements

  • api.licenseware.ioHTTPS 443
    Primary API for data ingestion and configuration
  • cdn.licenseware-collector.comHTTPS 443
    Fetches static assets and updates
  • github.comHTTPS 443
    Downloads dependencies (installation only)

System Requirements

  • Architecture
    64-bit only (32-bit not supported)
  • Disk Space
    ~100 MB for binaries and temp files
  • Memory
    Minimal (~50 MB during operation)

Proxy Configuration

If your network requires an HTTP proxy for outbound connections, the collector natively supports standard proxy environment variables for all egress traffic.

VariableDescriptionExample
HTTPS_PROXYProxy for HTTPS traffic (used for all collector communication)http://proxy.corp.com:8080
HTTP_PROXYProxy for plain HTTP traffichttp://proxy.corp.com:8080
NO_PROXYComma-separated list of hosts to bypass the proxylocalhost,127.0.0.1,.internal.corp

Authenticated proxies are supported using the format http://user:password@proxy.corp.com:8080.

Setup

Add the proxy variables to the collector environment file on the target machine. Each line uses KEY=value format.

Linux
HTTPS_PROXY=http://proxy.corp.com:8080 NO_PROXY=localhost,127.0.0.1
File: /etc/default/licenseware-collector
macOS
HTTPS_PROXY=http://proxy.corp.com:8080 NO_PROXY=localhost,127.0.0.1
File: /usr/local/etc/licenseware-collector
Windows
HTTPS_PROXY=http://proxy.corp.com:8080 NO_PROXY=localhost,127.0.0.1
File: C:\ProgramData\Licenseware\collector.env

Custom CA Certificates

Corporate proxies that perform TLS inspection inject their own CA certificate into the chain. The collector must be configured to trust these certificates, otherwise all HTTPS connections will fail.

OptionDescriptionExample
CA_CERT_PATHEnvironment variable pointing to a PEM file with additional CA certificates/etc/ssl/corp-ca.pem
--ca-certCLI flag (overrides CA_CERT_PATH when set)--ca-cert /etc/ssl/corp-ca.pem

Custom certificates are appended to the system certificate pool, not replacing it. All standard system CAs remain trusted.

Setup

Add the CA_CERT_PATH variable to the collector environment file, pointing to the PEM file containing your corporate CA certificate(s).

Linux
CA_CERT_PATH=/etc/ssl/certs/corp-ca.pem
File: /etc/default/licenseware-collector
macOS
CA_CERT_PATH=/usr/local/etc/ssl/corp-ca.pem
File: /usr/local/etc/licenseware-collector
Windows
CA_CERT_PATH=C:\ProgramData\Licenseware\corp-ca.pem
File: C:\ProgramData\Licenseware\collector.env

API Endpoints

All communication uses HTTPS with Bearer token authentication.

MethodEndpointPurposeFrequency
POST/agent/registerRegister agentOnce
GET/agent/configsFetch configsEvery 30m
GET/agent/catalogsGet catalogsEvery 30m
POST/agent/ingestUpload dataCyclical

Data Collection Process

What You Do

Download
Collector
Register
Collector
✓ Done!

What the Collector Does

Fetch Query
Catalogs
Execute
Queries
Upload to
LICENSEWARE ™

Data Collection Catalogs

System Inventory

Every 24 hours

Comprehensive system, hardware, and software inventory collection

Data CollectedLinuxWindowsmacOS
System Info (hostname, CPU, RAM)
Installed Programs

Software Usage

Every 4 hours

Software usage patterns and execution history

Data CollectedLinuxWindowsmacOS
Execution History (Prefetch, BAM, Access Times)

Runtime State

Every 30 minutes

Running processes, services, and active sessions

Data CollectedLinuxWindowsmacOS
Running Processes & Active Users

Installation Paths

Linux

Binary
/usr/local/bin/licenseware-collector
Service File
/etc/systemd/system/licenseware-collector.service
Environment File
/etc/default/licenseware-collector

Windows

Binary
C:\ProgramData\Licenseware\LicensewareCollector.exe
Environment File
C:\ProgramData\Licenseware\collector.env

macOS

Binary
/usr/local/bin/licenseware-collector
LaunchAgent/LaunchDaemon
/Library/LaunchDaemons/io.licenseware.collector.plist
Environment File
/etc/licenseware-collector.env

Direct Downloads

Download the collector binary directly for your operating system and architecture.

Installation Guide

1

Get Your Token

  1. Go to LICENSEWARE and sign in or create a free account
  2. Navigate to LC App and go to API Keys tab
  3. Click Create Key, configure it, and copy the token
2

Download and Install

Linux / macOS

⚠️ Requires root privileges

  1. Set your token as an environment variable
    export LICENSEWARE_TOKEN="your-token-here"
  2. Run the install script
    curl -sSL https://licenseware-collector.com/install.sh | sudo bash -s -- -t $LICENSEWARE_TOKEN

Windows

⚠️ Requires Administrator privileges

  1. Load token into environment variable
    Option A: From file (recommended) Create token.txt with your token pasted in the file, then run:
    $env:LICENSEWARE_TOKEN = Get-Content token.txt -Raw
    Option B: Directly paste token
    $env:LICENSEWARE_TOKEN = "your-token-here"
  2. Download the installer
    Invoke-WebRequest -Uri https://cdn.licenseware-collector.com/LicensewareCollector.exe -OutFile LicensewareCollector.exe
  3. Run the installer
    .\LicensewareCollector.exe
    The installer reads the token from the environment variable and registers automatically.

Uninstall Guide

Linux / macOS

  1. Uninstall the service
    sudo licenseware-collector uninstall --force
  2. Remove the collector binary:
    sudo rm /usr/local/bin/licenseware-collector

Windows (Administrator PowerShell)

  1. Uninstall the service
    licenseware-collector.exe uninstall --force
  2. Remove the collector binary:
    del "%ProgramData%\Licenseware\LicensewareCollector.exe"
The --force flag stops the service if it is still running before uninstalling.

Quick Reference

Agent Intervals

  • Config Refresh: 30 mins
  • Catalog Check: 30 mins
  • Failed File Cleanup: 6 hours

Service Commands

  • licenseware-collector register --token <TOKEN>
  • licenseware-collector status
  • licenseware-collector stop
  • licenseware-collector run-once

Logs & Troubleshooting

The collector writes all logs to standard error. How you access them depends on the operating system and service manager.

Log Level

The verbosity is controlled by the LOG_LEVEL environment variable in the collector environment file. The default is error.

LevelDescription
debugMost verbose — all messages including internal state
infoOperational messages (startup, config reload, ingestion cycles)
warnNon-critical issues that may need attention
errorFailures only (default)
criticalFatal errors that stop the service

Linux

On systemd-based systems, logs are captured by the journal automatically.

Follow logs in real time:
journalctl -u licenseware-collector -f
View logs from the last hour:
journalctl -u licenseware-collector --since "1 hour ago"

macOS

The launchd service writes both stdout and stderr to a single log file.

Follow logs in real time:
tail -f /var/log/licenseware-collector.log
View full log file:
cat /var/log/licenseware-collector.log

Windows

The Windows service does not write to a file or to Windows Event Log. To check service health, use the status command. For full log output, stop the service and run the collector interactively in an Administrator terminal.

Check service health:
licenseware-collector status
Run interactively to see log output (stop the service first):
licenseware-collector run-once --env-file C:\ProgramData\Licenseware\collector.env