When troubleshooting the Intuitive for PaperCut MF solution, issues typically arise around PaperCut’s Data Integrations and how it works with Intuitive ETL Service.
Architecture
Before we get stuck in, let’s remind ourselves of the architecture of Intuitive for PaperCut MF.
We retrieve data via PaperCut’s Data Integrations feature. It’s a method they’ve developed of exporting data from the internal PaperCut database, be it SQL Server, Oracle, MySQL and so on, but into a standardised CSV format. Those CSV’s are created for the 5 main tables (we’ll ignore the environmental parameters for now) of the Users, Printers, Accounts and Servers – each of which act as a dictionary / lookup, and the Printer Usage Log which is the meat of what documents are being printed by whom, where and what by.
Before we can generate those CSV files, we inject a ‘properties’ file to the PaperCut installation directory. This properties files includes a basic set of instructions what tables we’d like to export, how much we’d like to retrieve, where it should be exported to, and when those CSV files should be deleted by PaperCut. Data Integrations then exports that data at the same time of its maintenance routines, which is typically at 12:55am or on demand.
With the CSV files created by Data Integrations, we access those CSV files through our ETL service. This service can either be located on the same server as PaperCut MF (colocation) or as a standalone implementation on a server on the customers network. We access those files via a network path to the PaperCut MF server, and the structure of which can be found in the ETLService.config file.
That data import is performed once per day, and is performed in the early hours of the morning, typically when the target server is going through its maintenance cycle. We import those CSV files into a SQLite database, which is stored on the Intuitive server.
With the SQLite database updated, the dashboard software accesses that SQLite database through another ODBC connection. That SQLite database is used to populate the datafeeds, which have their own schedule, which allow data to fill out the premade dashboards.
The datafeed schedules are usually an hour or so after the initial load into the SQLite database. This is to give the ETL time to fully ingest all of the data, but again they run in the early hours of the morning.
You may have noticed a secondary Intuitive database, but this just contains the application data. Such as which users can sign in, their roles, where components are located onscreen etc.
With all that in mind, it may have started to stir where issues may arise during the data import process.
The best place to start, is at the start itself.
PaperCut MF checks
If you open PaperCut MF’s UI, you can check through the logs in that software for the last available dates of print activity. That can be used as a basis for what PaperCut MF is presenting you, vs what Intuitive is presenting to you.
If there is a data mismatch by more than a day (again, bear in mind that we load data once per day in the early hours of the morning), then that is an indication to move further down these troubleshooting steps.
Checking logs
Moving on to the Intuitive side, we can check the Scheduler log files to check for any important information.
These log files will present any errors in the import of the CSV files. Since each CSV has a timestamp of activity from that given day, its import is noted in the scheduler log file. It’s a useful file for checking what exactly has been imported on that given day.
If there are any errors in these log files from the date you’ve noticed the data is not updating, they may be fairly self-explanatory. It's usually a case of that either the data has not been generated by PaperCut yet, or you have network access issues to that CSV path.