Apps Monitor - Technical Reference | CXTech
Apps Monitor - Technical Reference
Module: Certero for Enterprise ITAM > Apps Monitor
Codebase: Application Server\Website\CerteroWebApp\Controllers\Metered*.cs
Database Schema: C_Data\AppsMonitor
Version: 8.8+
Overview
Apps Monitor (AppsMon) is the application usage monitoring module of Certero for Enterprise ITAM. It tracks software usage across Windows endpoints to identify unused or underutilized software, supporting license optimization and cost reduction initiatives.
The module operates through the Certero Client Agent installed on Windows computers. The agent performs two key functions:
File Scanning - Discovers executable files (.exe) resident on computers
File Metering - Monitors actual execution of files by logged-on users
This dual approach provides both a complete inventory of potential software usage and actual usage data, enabling accurate identification of shelfware and optimization opportunities.
Navigation
Menu Path: Main Menu → Apps Monitor → [Files | Computers | Users | Tags]
Direct URL Patterns:
Files: /CerteroWebApp/MeteredFile
Computers: /CerteroWebApp/MeteredComputer
Users: /CerteroWebApp/MeteredUser
Tags: /CerteroWebApp/MeteredTag
Key Concepts
Concept | Description |
|---|
Concept | Description |
|---|---|
File Scanning | Weekly scan of Windows computers to detect all resident executable files and their paths |
File Metering | Real-time capture of file execution events by logged-on users |
Usage Period | Rolling 90-day window for usage data retention and percentage calculations |
% Used | Percentage of days a file was used since first detection (max 90 days) |
Original Filename | Built-in file property from vendor; helps identify renamed files |
Raw Data | Complete dataset of individual usage events per day |
Summary Data | Aggregated usage metrics (last used, % usage) per file/computer/user |
Data Model
Primary Entities
Entity | Table | Description |
|---|
Entity | Table | Description |
|---|---|---|
MeteredFile | dbo.MeteredFile | Master list of discovered executable files |
MeteredComputer | dbo.vwMeteredComputer | Computers with Apps Monitor data |
MeteredUser | dbo.vwMeteredUser | Users with associated file usage |
MeteredTag | dbo.MeteredTag | Custom tags for organizing files |
MeteredFileStatistics | dbo.MeteredFileStatistics | Usage statistics and calculations |
MeteredFileUserDetail | dbo.MeteredFileUserDetail | User-level usage detail |
MeteredFileComputerDetail | dbo.MeteredFileComputerDetail | Computer-level usage detail |
Entity Relationships
Data Views
View | Purpose |
|---|
View | Purpose |
|---|---|
vwMeteredFile | File data with aggregated properties |
vwMeteredComputer | Computers with usage summary |
vwMeteredUser | Users with usage summary |
vwMeteredTag | Tags with file associations |
User Interface
Screen: Files
Navigation: Main Menu → Apps Monitor → Files
Purpose: Summary list of all discovered executable files across monitored Windows computers.
Key Columns:
Column | Description |
|---|
Column | Description |
|---|---|
Filename | Name of the executable file |
Original Filename | Vendor-defined filename property (may differ if renamed) |
Description | File description from metadata |
Company | Vendor/publisher name |
Product Name | Associated product name from metadata |
Computers | Count of computers where file exists |
Users | Count of users who have executed the file |
Last Run | Most recent execution date across all computers |
% Used | Usage percentage over measurement period |
Actions Available:
Action | UI Element | Result |
|---|
Action | UI Element | Result |
|---|---|---|
View Computer Usage | Click "View Details" → Utilization for Computers | Shows per-computer usage for selected file |
View User Usage | Click "View Details" → Utilization for Users | Shows per-user usage for selected file |
Expand Row | Click dropdown arrow on row | Shows version, path, and description details |
Filter | Column header filters | Filters grid by criteria |
Export | Toolbar export button | Exports data to Excel/CSV |
Row Expansion Details:
When expanding a file row, the following additional details are displayed:
Version (all versions found)
Path (all paths where file exists)
Description (all descriptions found)
Note: Multiple values may appear in a single row as the grid groups by filename only.
Screen: Computers
Navigation: Main Menu → Apps Monitor → Computers
Purpose: Computer-centric view of file usage data.
Key Columns:
Column | Description |
|---|
Column | Description |
|---|---|
Computer Name | Name of the Windows computer |
Files Used | Count of files with recorded usage |
Last Inventory | Date of last file scan |
Device Name | Name of device user logged on from (for RDS) |
Actions Available:
Action | UI Element | Result |
|---|
Action | UI Element | Result |
|---|---|---|
View Files | Click "Files Used" count | Pivots to detailed file usage for that computer |
Screen: Users
Navigation: Main Menu → Apps Monitor → Users
Purpose: User-centric view of file usage data.
Key Columns:
Column | Description |
|---|
Column | Description |
|---|---|
Username | User account name |
Files Used | Count of files executed by user |
Last Run | Most recent file execution date |
Actions Available:
Action | UI Element | Result |
|---|
Action | UI Element | Result |
|---|---|---|
View Files | Click "Files Used" count | Pivots to detailed file usage for that user |
Screen: Tags
Navigation: Main Menu → Apps Monitor → Tags
Purpose: Custom tag management for organizing and categorizing files.
Key Columns:
Column | Description |
|---|
Column | Description |
|---|---|
Tag Name | Custom tag identifier |
Files | Count of files associated with tag |
Business Logic
File Scanning Process
Trigger: Scheduled by Certero Client Agent (default: weekly)
Steps:
Agent scans configured drives for executable files (.exe)
File metadata extracted (name, version, description, company, product)
Results uploaded to Endpoint Server
Data aggregated into MeteredFile table
Previous scan data retained for comparison
Exceptions Applied:
System directories excluded (Windows, Program Files system components)
Temporary files excluded (.tmp, ~)
Remote support applications excluded (WebEx, Bomgar, Zoom)
Outcome: Complete inventory of executable files available on each computer.
File Metering Process
Trigger: Real-time monitoring via mini-filter driver (cmflt.sys)
Steps:
Mini-filter driver intercepts file execution events
Event captured with timestamp, user context, file details
Data batched and uploaded to Endpoint Server (default: every 2 hours)
Usage statistics calculated and updated in database
Data Captured:
File executed
User who executed
Computer where executed
Device name (for remote sessions)
Timestamp
Outcome: Continuous record of actual software usage.
Usage Percentage Calculation
Formula:
Constraints:
Maximum measurement period: 90 days
Starts from first detection date if less than 90 days
Example:
File discovered 30 days ago
Used on 15 of those days
% Used = (15 / 30) × 100 = 50%
API Reference
Endpoints
Method | Endpoint | Description | Permission |
|---|
Method | Endpoint | Description | Permission |
|---|---|---|---|
GET | /api/MeteredFile | List metered files | MeteredFile.View |
GET | /api/MeteredFile/{id} | Get specific file details | MeteredFile.View |
GET | /api/MeteredComputer | List computers with usage | MeteredComputer.View |
GET | /api/MeteredUser | List users with usage | MeteredUser.View |
GET | /api/MeteredTag | List tags | MeteredTag.View |
GET | /api/MeteredFileDetail | Get detailed file statistics | MeteredFile.View |
GET | /api/MeteredStatScale | Get statistics scale data | MeteredFile.View |
OData Query Support
All endpoints support standard OData query parameters:
$filter - Filter results
$orderby - Sort results
$top / $skip - Pagination
$select - Field selection
$expand - Related entity expansion
Configuration
Enabling Apps Monitor
Apps Monitor must be enabled per-computer via Configuration Rules.
Navigation: Main Menu → Settings → Configuration Rules → [Rule Name] → Properties → Modules
Steps:
Navigate to Configuration Rules
Select or create a rule targeting desired computers
Click "Properties"
Under Modules, click "Enabled" against Apps Monitor
Click "Save"
Wait for agent to receive updated configuration
Note: License required. Unlicensed modules appear greyed out.
Transient VM Configuration
For non-persistent VDI environments, additional configuration is required.
Issue: Transient VMs lose data on reboot before upload.
Solution: Configure more frequent data uploads or use persistent storage for agent data.
See: "How To Configure Apps Monitor for Transient Virtual Machines" in CUP documentation.
Troubleshooting
Issue: Computer not appearing in Apps Monitor
Symptoms:
Computer has agent installed but not visible in Apps Monitor → Computers
No file usage data for specific computer
Cause: Apps Monitor module not enabled for that computer's configuration rule.
Resolution:
Navigate to Main Menu → Settings → Configuration Rules
Identify rule targeting the affected computer
Verify Apps Monitor is enabled under Properties → Modules
If disabled, enable and save
Wait for agent to sync (up to 24 hours) or manually trigger sync
Issue: File usage not being recorded
Symptoms:
Files appear in scan but no usage data
"Last Run" column shows no data
Cause:
File may be in exception list
Mini-filter driver not loaded
Agent service not running
Resolution:
Check if file matches exclusion patterns (see File Scan & File Metering Exceptions)
Verify agent service is running: services.msc → Certero Agent
Check mini-filter status: fltmc command
Review agent logs: C:\ProgramData\Certero\Agent\Logs\
Issue: % Used showing unexpected values
Symptoms:
Usage percentage seems too high or too low
Values don't match expected usage patterns
Cause: Misunderstanding of calculation basis.
Resolution:
Remember % Used is based on days since first detection, not 90 days
For recently discovered files, percentage is over shorter period
Check "First Detected" date to understand measurement window
Usage is per-user, per-computer - aggregate may differ from individual
Issue: Data hashing enabled - cannot see file details
Symptoms:
File details appear hashed/anonymized
Cannot identify specific executables
Cause: Data hashing feature enabled for privacy compliance (v8.7+).
Resolution:
Data hashing is intentional privacy feature
Contact administrator to disable if business need exists
Hashing settings found in configuration rules
Integration Points
Dynamic Groups
Apps Monitor data can be used in Dynamic Group criteria:
File Usage (RAW) - Individual usage events
File Usage (Summary) - Aggregated usage metrics
Use Case: Create group of computers with unused software for license reclamation.
Governance Filters
Usage criteria available in governance filters for policy enforcement.
Reports
Usage data can be included in scheduled reports:
Usage by file
Usage by computer
Usage by user
Unused software identification
Dashboards
Apps Monitor widgets available for dashboard configuration:
Top used applications
Unused software summary
Usage trends
Related Documentation
Technical Reference
Key Files
File | Purpose |
|---|
File | Purpose |
|---|---|
Controllers\MeteredFileController.cs | Files screen controller |
Controllers\MeteredComputerController.cs | Computers screen controller |
Controllers\MeteredUserController.cs | Users screen controller |
Controllers\MeteredTagController.cs | Tags screen controller |
Controllers\Api\MeteredFileController.cs | Files API endpoint |
Controllers\Api\MeteredFileDetailController.cs | File detail API |
Services\AppsMonitor\MeteredFileService.cs | Business logic service |
ViewModels\AppsMonitor\DataGridPageViewModel.cs | View model |
Models\AppsMonitor\FileQueryOptions.cs | Query parameter model |
Database Objects
Object | Type | Purpose |
|---|
Object | Type | Purpose |
|---|---|---|
dbo.MeteredFile | Table | Master file records |
dbo.MeteredFileStatistics | Table | Usage statistics |
dbo.MeteredTag | Table | Custom tags |
dbo.vwMeteredFile | View | Files with aggregated data |
dbo.vwMeteredComputer | View | Computers with usage |
dbo.vwMeteredUser | View | Users with usage |
dbo.vwMeteredTag | View | Tags with associations |
Permission Requirements
Permission | Description |
|---|
Permission | Description |
|---|---|
MeteredFile.View | View Files screen and data |
MeteredFile.Edit | Modify file records |
MeteredComputer.View | View Computers screen |
MeteredUser.View | View Users screen |
MeteredTag.View | View Tags screen |
MeteredTag.Edit | Create/modify tags |
Revision History
Date | Author | Changes |
|---|
Date | Author | Changes |
|---|---|---|
2025-01-14 | CXTech | Initial technical reference created |