pentaho/pentaho-kettle · error · KettleXMLException
SyslogMessageMeta.Exception.UnableToReadStepInfo
Error message
SyslogMessageMeta.Exception.UnableToReadStepInfo
What it means
Thrown by SyslogMessageMeta.readData (called from loadXML) when parsing the step's XML node fails — any exception during XMLHandler.getTagValue extraction is wrapped in a KettleXMLException with this message.
Solutions
- Validate and repair the .ktr XML around the syslog step node
- Re-export the transformation from Spoon rather than hand-editing
- Compare with a working transformation's XML for the expected tags (priority, datePattern, addTimestamp, addHostName)
- Load the step from the repository instead using readRep
Example fix
// before // hand-edited XML: <priority> missing attribute // after // re-export from Spoon: <priorityType>Warning</priorityType><datePattern>MMM d HH:mm:ss</datePattern>...
Defensive patterns
Strategy: try-catch
Validate before calling
Document doc = XMLHandler.loadXMLFile(new InputSource(stream)); // validate XML parses before loading meta
if (doc == null) throw new KettleXMLException("Malformed transformation XML"); Try / catch
try { meta.loadXML(stepNode, databases, metaStore); } catch (KettleXMLException e) { logError("Syslog step XML unreadable: " + e.getCause(), e); } Prevention
- Never hand-edit .ktr files; edit via Spoon
- Keep Pentaho versions consistent across environments
- Keep transformation file backups before edits
When it happens
Trigger: Loading a transformation whose <step> XML for Syslog Message is malformed or missing expected tags; XMLHandler throwing on bad structure/attributes.
Common situations: Hand-edited transformation files; partial/corrupted .ktr export; version mismatch where XML schema changed; truncated file transfer.
Related errors
- GetTableNamesMeta.Exception.UnableToReadStepInfo
- GPBulkLoaderMeta.Exception.UnableToReadStepInfoFromXML
- GPLoadMeta.Exception.UnableToReadStepInfoFromXML
- MappingMeta.Exception.ErrorLoadingTransformationStepFromXML
- MultiMergeJoinMeta.Exception.UnableToLoadStepInfo
AI-assisted analysis of pentaho/pentaho-kettle@f3058517a1 (2026-09-13).
Data as JSON: /api/errors/2c138c790d3c3450.
Report an issue: GitHub.
Appendix: source
Thrown at engine/src/main/java/org/pentaho/di/trans/steps/syslog/SyslogMessageMeta.java:238
retval.append( " " + XMLHandler.addTagValue( "datePattern", datePattern ) );
retval.append( " " + XMLHandler.addTagValue( "addHostName", addHostName ) );
return retval.toString();
}
private void readData( Node stepnode, List<DatabaseMeta> databases ) throws KettleXMLException {
try {
messagefieldname = XMLHandler.getTagValue( stepnode, "messagefieldname" );
port = XMLHandler.getTagValue( stepnode, "port" );
serverName = XMLHandler.getTagValue( stepnode, "servername" );
facility = XMLHandler.getTagValue( stepnode, "facility" );
priority = XMLHandler.getTagValue( stepnode, "priority" );
datePattern = XMLHandler.getTagValue( stepnode, "datePattern" );
addTimestamp = "Y".equalsIgnoreCase( XMLHandler.getTagValue( stepnode, "addTimestamp" ) );
addHostName = "Y".equalsIgnoreCase( XMLHandler.getTagValue( stepnode, "addHostName" ) );
} catch ( Exception e ) {
throw new KettleXMLException( BaseMessages.getString(
PKG, "SyslogMessageMeta.Exception.UnableToReadStepInfo" ), e );
}
}
public void readRep( Repository rep, IMetaStore metaStore, ObjectId id_step, List<DatabaseMeta> databases ) throws KettleException {
try {
messagefieldname = rep.getStepAttributeString( id_step, "messagefieldname" );
serverName = rep.getJobEntryAttributeString( id_step, "servername" );
port = rep.getJobEntryAttributeString( id_step, "port" );
facility = rep.getJobEntryAttributeString( id_step, "facility" );
priority = rep.getJobEntryAttributeString( id_step, "priority" );
datePattern = rep.getJobEntryAttributeString( id_step, "datePattern" );
addTimestamp = rep.getJobEntryAttributeBoolean( id_step, "addTimestamp" );
addHostName = rep.getJobEntryAttributeBoolean( id_step, "addHostName" );
} catch ( Exception e ) {
throw new KettleException( BaseMessages.getString(View on GitHub (pinned to f3058517a1)