FME Version
Introduction
Log files are the best resource available for debugging workflows on FME Flow. In addition to the general translation details, we can use workspace tools and settings to record additional information to the job and automation log files.
This article contains instructions and tips for using additional logging tools to troubleshoot issues affecting FME Flow workflows. It is best used for general investigation and diagnostics. Search keywords and errors on Knowledge Base to find resources. Make sure to review the complete list of FME Flow Troubleshooting Guides when you identify the source of the issue.
Debugging Disclaimer
Before you begin troubleshooting, carefully consider which tool will be most effective for solving the problem you are encountering in FME Flow. Not every tool or strategy will be useful or relevant to your issue. However, any progress is useful since troubleshooting is often a process of elimination.
The following sections may provide example directions for using each tool, but availability and instructions may differ between operating systems, deployment types, software versions, and other system factors.
Always use caution or contact your FME Flow administrator when making any changes to your installation.
Logging in “Debug Mode”
Debug logging records additional translation information to the job log. “Debug mode” is best used when an error has already occurred and you seek further information. For example, in the event of a web and database failure, “debug mode” will often record more detailed information about the request, response, and transaction to the job log.
Enable Debug Logging in FME Workbench
Open the workspace in FME Workbench. In Workbench settings, turn on the Log Message’s debug filter. From Windows:
Main Menu > Tools > FME Options… > Translation > Log Settings
Log Debug is applied for all workspaces run in Workbench while the setting is enabled.
Job Log Settings are configured within FME Workbench.
Enable Debug Logging in FME Flow
To enable debug logging to run workspace in FME Flow, log into FME Flow and check the "Log Debug" option under:
FME Flow Homepage > Run Workspace > Advanced > Log Debug
A more detailed job log can be found under "Jobs > Completed" after running the workspace.
Keep in mind that most debug messaging is insignificant to a workflow. For example, nearly all messages labelled “BADNEWS ” can be ignored. It’s a good idea to disable debug logging when finished troubleshooting, as these messages can be misleading.
System Logs DEBUG_LEVEL
System logs can also produce more detailed messaging. Each FME Flow component has a configuration file, "messagelogger.properties", that contains settings for the process logging.
Update the DEBUG_LEVEL parameter to SUPER_VERBOSE to capture more information in the logs.
Increasing the logging verbosity produces larger log files, which can consume excessive disk space. Consider enabling verbose logging only temporarily while troubleshooting or increasing the frequency of system cleanup tasks.
Inspecting Workflow Values with Logging Tools
Bad data can cause workflows to fail or produce unexpected results. We can add tools to our workflows that record the raw values in the log file.
Logging can occur at the workspace or Automation level in FME Flow. Choose a workspace Logger transformer or automation Log action to capture and record values at specific points of a workflow.
Logging Workspace Values
To log values at any point in a workspace, connect a Logger transformer to an existing output port. If you’re interested in just a specific attribute, select it in the Logger’s text editor.
The “first name” attribute is selected in the Logger’s Log Message parameter.
Republish the workspace to FME Flow and rerun the translation. In the job log, search for the “Logger” message. Are the attribute values expected or valid? The value for the “first name” attribute is recorded in the job log, in addition to the feature’s other attributes.
Logging Automation Values
To log values at any point in an Automation, connect a Log Action to a success or failure port. Use the Log Action’s Formatted Message drop-down menu to select a single upstream value or use the Text Editor to log several values.
A Log Action is connected to the “Success” output port of an Email Trigger. The drop-down menu allows us to select the incoming email attachment value.
Trigger the automation and review the automation log. The logged value will follow the event.
The Log Action recorded the email attachment path to the Automation Log.
Manually Triggering an Automation
If you’re experiencing failures with one of the Automation Triggers, the Manual Trigger can be used to run an Automation on-demand and use sample event JSON data as input. This is useful for building or debugging an Automation that would otherwise need a spontaneous event to be triggered, like a webhook or directory watch.
Logging Workspace Values in an Automation
You can use the FME Flow Automations Writer in order to pass translation values to the Automation log.
A workspace writes a dataset and passes its name to an FME Flow Automation writer. Used in an Automation, that information can be passed directly to another action such as a Log. The drop-down menu allows us to select the correct attribute to record to the Automation log.
See How I can use 'FME Flow Automation Writer' to pass data to other Workbench in FME Flow?
Python Logging
Python workflows can fail in FME Flow if the required modules are not found. Print the locations of Python dependencies directly to the job log to verify.
In the PythonCaller, add the following snippet to the script:
import sys print(sys.path)
The log file will now include a list of the system paths FME Flow is loading. Confirm the following:
- The expected interpreter is loaded.
- The correct directories are listed.
- Navigate to the actual directories to confirm that modules, files, and folders are actually present.
Additional Resources
- Review the FME Flow Troubleshooting Guides for common questions and solutions
- Follow along with Debugging for Workspaces for troubleshooting strategies and methodology.
- Search the Knowledge Base for keywords related to your problem
- Contact Safe Software Support and include any logs, screenshots, or information captured while troubleshooting.
Comments
0 comments
Please sign in to leave a comment.