Skip to content

Events log schema

Overview

Events log keeps records of events related to each Job and system operations. The Management Console receives events that are enabled in the event logs filter and stores them in .db SQLite database files in storage folder\data\reporting\files and storage folder\data\reporting\daily folders.

System events and errors

events/errors table structure

The events and errors tables can be found in .db files in the storage folder\data\reporting\daily folder. These table contain system events related to Agents operations, excluding file-related events which are stored in a separate database.

Column Description
id Event identifier.
ts Timestamp in the Unix time format.
type Event type.
Possible values:
  • events (applicable to the events table)
  • error (applicable to the errors table)
srcType Event source type.
Possible values:
  • server
  • agent
srcId Event source identifier.
Possible values:
  • main - Indicates the Management Console as the source of the identifier.
  • <peer_id>
name A descriptive name of the event.
Example:
  • Start indexing
  • Agent pending approval
  • Completed job
level Event severity level.
Possible values:
  • 1 - Error
  • 3 - Info
  • 4 - Trace
component Event source component type.
Possible values:
  • App
  • server - The Management Console
  • <agent_name> - Specific Agent instance
  • <job_name> - Specific Job
  • tracker
  • Pre-indexing script - Script triggered before file indexing begins
  • Complete script - Script triggered after all Agents complete downloading
  • Pre-move script - Before finalizing download script
  • Post-download script - Script triggered after an Agent completes downloading
data A JSON data structure containing event's details.
peerId The identifier of the Agent whom the event concerns.
jobId Job identifier.
jobRunId Job Run identifier.
_added Event time and date in a human-readable format.

Event details data structures

The table below contains events' details for different components.

Component Level, event name and event details data structure
App Info events:
  • Startup: "time":"startup time"
  • Shutdown: "uptime":"seconds", "reason":"shutdown_reason", "status":"exit status"
  • Device name changed: "name":"new device name"
Trace events:
  • Apply policy: "policy_id":"id","success":"boolean","status":"int"
    Mask: FAILED = 0x1, APPLIED = 0x2, NEEDS_NETWORK_RESTART = 0x4,POSTPONED = 0x8
  • Apply network settings: "interfaces":"list of network interfaces","name":"interface name", "id":"interface id","mac":"device MAC address","type":"wired/wireless", "addrs":"list of addresses"
Error events:
  • Failed to relocate folder
  • Failed to add folder
  • Failed to create transfer
  • <core_error>
  • No network connection
  • No connection to Management Console
  • Failed to connect to Management Console: wrong certificate fingerprint
Job Info events:
  • Added
    "path":"folder_path","access":"RO/RW"
  • Removed
  • Paused
    "global:"boolean" true if paused through scheduler
  • Resumed
    "global":"boolean"
  • Completed
    "etime":"transfer execution time","err":"transfer error"
  • File "filename.ext" was locked by "lock_owner" with access (D:RWD): {"path":"absolute_path","name":"filename.ext","state":"Locked","type":0,"sep":"/"}
  • File "filename.ext" was unlocked: {"path":"absolute_path","name":"filename","state":"Unlocked","type":0,"sep":"/"}
Trace events:
  • Start script: "script":"script name"
  • Finish script: "script": "script name, "code: exit code"
  • Start indexing: "initial":"first time indexing or not", "total": current folder state, if initial=false{"files","size"}
  • Finish indexing: "initial":"first time indexing or not", "total": current folder state, if initial=false {"files", "size"}
  • Start data transfer: "total":{"files", "size"}, "local:{"files","size"}, "queue":(if not empty):{"files","size"}
  • Finish data transfer: "total":{"files", "size"}, "local:{"files", "size"}, "queue":(if not empty):{"files", "size"}
  • Got N peers: "addr":"peer ip address","transport":"UTP/TCP"
  • Changed files are overwritten
Error events: <transfer_error_name>
Other Agents Info events:
  • Agent pending approval <agent_name>
Trace events:
  • Connected to peer <peer_name>: "ip", "protocol," "v"
  • Disconnected from peer <peer_name>: "ip", "protocol," "v"
Error events:
  • Time difference exceeded. Cannot sync with <peer_name>: error:"error code"
  • <core error>
Tracker Trace events:
  • Got N peers: "addr":"peer ip address","transport":"UTP/TCP"
  • No peers found: "addr":"peer ip address","transport":"UTP/TCP"
Error events:
  • Failed connect to tracker
Server Info events:
  • Server startup
  • Server shutdown
Error events:
  • Tracker not reachable at following addresses: {MANAGEMENT_HOST}:3000: {"details":"Tracker with addresses {MANAGEMENT_HOST}:3000 has not been reachable for 10 minutes. This can be due to the tracker service actually being down or a configuration problem."}
Post-download script Trace events:
  • {"isError":false}
Pre-indexing script Trace events:
  • {"isError":false}
Complete script Trace events:
  • {"isError":false}
Pre-move script Trace events:
  • {"isError":false}

File events

The files table can be found in .db files in the storage folder\data\reporting\files folder.

Column Description
id Event identifier.
ts Timestamp in the Unix time format.
name The name of the file.
state File's lifecycle state.
Possible values:
  • Added
  • Downloaded
  • Pre-seeded
  • Locked
  • Unlocked
  • File is exclusively locked
  • File is locked by multiple users
peerId The identifier of the Agent whom the event concerns.
jobId Job identifier.
jobRunId Job Run identifier.
data A JSON data structure containing file's details:
  • path
  • name
  • size
  • state
  • type
  • sep
  • mtime
  • hash
_added Event time and date in a human-readable format.

File events:

  • Added file "<file_name>" ("by_peer":"PeerId string" if by remote peer, "path", "size")
  • Added file "<file_name>" on remote
  • Deleted file "<file_name>" ("by_peer":"PeerId string" if by remote peer, "hash" if it's local file, "path", "size")
  • Deleted file "<file_name>" on remote
  • Updated file "<file_name>" ("by_peer":"PeerId string" if by remote peer, "hash" if it's local file, "path", "size")
  • Downloaded file "<file_name>"
  • Renamed file "{file_name}" to "{new_name}"
  • File {file_name} was changed on Read-Only agent, it won't be synced
  • ("hash", "path", "size")