The Logs page provides a detailed, step-by-step history of all SIS integration processes and synchronization runs. This section is essential for monitoring integration health, verifying that tasks have completed successfully, and troubleshooting any errors that may occur.
Understanding the Log Interface
The log viewer is divided into three main parts: the Integration Run selector, the Integration Steps pane, and the Log Messages pane.
1. Integration Run Selector
At the top of the left-hand column, you will find the Integration Run dropdown. This menu lists all recent integration runs, with the most recent run displayed by default. Each run in the list is preceded by an icon indicating its overall status. You can select any run from this list to load its specific logs into the panels below.
|
Icon
|
Status
|
Description
|
|
|
Success
|
The integration run completed without encountering any fatal errors that would stop the process.
Note: This status indicates the run finished, but it may still contain warnings or non-fatal errors that should be reviewed in the logs.
|
|
|
Failure
|
The integration run encountered a fatal error and could not be completed successfully. The logs will provide details on what caused the failure.
|
2. Integration Steps Panel
Once a run is selected, this panel populates with the complete, hierarchical list of steps for that specific integration run (e.g., "Tenant Initialization," "File Management," "Data Sync").
Each step in the list displays its own status icon (typically a
green checkmark for success and
red X for failure) along with the time it took to complete on the right (e.g.,
184ms). To see the detailed output, you can click on any step in this list (like "
Data Reader Process"), which will load its specific information into the Log Messages panel on the right.
3. Log Messages Panel
This is the main panel on the right where the detailed output for a selected step is displayed. When you click a step in the Integration Steps Panel (like "Tenant Initialization"), this area populates with its specific log messages.
This panel displays a chronological list of all log outputs—including informational messages, success messages, warnings, and errors—for the selected step. In the example, you can see messages like "Beginning process." and "Process completed successfully."
Here are the features available at the top of the Log Messages panel:
- Search Logs: Allows you to filter the messages to find specific text, such as an error code or ID.
- Types: This dropdown lets you filter messages by their type. You can select one or more categories (Success, Info, Warning, Error) to view only those message types.
- Toggle Timestamps: This control allows you to show or hide the exact timestamp for each log entry. These timestamps are essential for comparing and correlating the integration's actions with event logs from other systems (such as your SIS or file server). This also helps determine exactly when a process ran or identify steps that took longer than usual.
Detailing the Integration Steps
The Integration Steps Panel provides a granular view of the entire SIS integration process, breaking it down into individual tasks. Understanding each step helps in monitoring the flow of data and diagnosing potential issues. Below is a breakdown of the common steps you will see in an integration run:
Tenant Initialization: Initializes the overall integration process, preparing the system for the run.
- Tenant Initialization: Initializes the overall integration process, preparing the system for the run.
- Tenant Info: Gathers and processes all information required for the integration to run, such as system configurations, connection details, and other tenant-specific settings.
- Clear Temp Tables: Clears out temporary staging tables from any previous runs. This ensures a clean slate for the current integration and prevents data from being improperly carried over.
- File Management: This is a parent step that groups all file-related processes. It will show a "Success" status if all its child steps (like 'Stage Client TextFiles') complete successfully.
- Stage Client TextFiles: This step is responsible for moving the SIS data files from their source (e.g., an FTP root folder) to a staging area where they can be processed. The logs for this step will show which files were found and moved (e.g., ~\ftpRoot\...\184clevrLocations.txt -> ~\DataIntegration\...).
- Data Reader Process: This is a major step where all the staged files are read, parsed, and transformed from their original format into the system's staging format. The logs here are very detailed, showing:
- Which files were found or not found (e.g., No files found... *Classes.txt).
- The start of processing for each data entity (e.g., Beginning reader process for entity: Staff).
- Data validation and processing results per location (e.g., 999: No data was processed for this location).
- Data Merge Process: After the new data is read, this step fetches the current data from the production database. It then compares the new data (from staging) with the existing data (from production) and merges them to create the final, complete dataset that will be applied. Logs will show the start and success of merges for each entity (e.g., Beginning merge for entity: Students).
- Data Sync: This is a parent process that groups all individual data synchronization tasks. It will show a "Success" status if all its child steps (listed below) complete successfully.
- Location Sync / Student Sync / Staff Sync: These are the individual child processes that execute the data sync. They take the merged data for their respective entities (Locations, Students, or Staff) and apply it to the production database.
- Subscribed Functions: This step processes additional, custom tasks or logic that are configured to run after the main integration data sync is complete.
- Auto Generate Forms / Auto Generate Forms By Grade: In this context, "Forms" refers to records. These steps automatically create new records for people (e.g., a student or staff member) who meet the criteria for a specific form (based on their role or grade) but do not yet have a corresponding record for that form.
- Update Grouping Locations: This step processes a setting related to location changes. If enabled, it automatically updates "Listings" (rosters) by adding people to their new location's roster when the integration detects they have moved.
- Create Person Records For Locations: This utility step creates a "person" entity (a specific record type in the system) for locations. This allows a location itself to be the subject of records.
- Demographics Import: This step imports specific demographic data into the system, making it available to be imported into other records on demand.
- Perform Bulk Form Integration Async: This asynchronous (background) process runs nightly bulk form integrations. It specifically processes forms configured with the "Update fields on the form flagged for data integration (Text file only)" setting, which is used to import the demographic data for Textfile integrations.
- Perform Generic Bulk Form Integration Async: This is a similar asynchronous bulk import process. It runs for any generic text file import that has the "Run Import with Integration" setting enabled, allowing for flexible, scheduled data imports.
- Run Statistics Gathering: This is the final step in the run, where the system collects and logs statistics about the completed integration. This includes changes to students, staff, and parents; counts of people associated with locations; the number of "Groupings" (rosters); and reports on any potential duplicate person records.