2016-10-05 4 views
1

У нас есть работа Pentaho, которая отлично работает в нашей локальной среде, но мы получаем сообщение об ошибке в файл журнала после его развертывания и выполнения задания с использованием Kettle. Ошибка возникает в задании, которое имеет параметр «Выполнить для каждой строки ввода?». проверено. Ниже описано, как настраиваются параметры ведения журнала пути, а имена - это переменные, которые устанавливаются ранее. Он может записать файл в файл до этого шага.Pentaho Kettle - Ошибка записи в файл журнала

Работа Logging Конфигурация

enter image description here

Это Я получаю ошибку при работе чайника уровне журнала отладки. Внутри неудачной работы мы также записываем в журнал, который я не знаю, если это плохая практика. Кто-нибудь еще сталкивается с этой проблемой и знает разрешение?

ProcessFiles - Log folder [file:////<ServerPath>/QA/PentahoLogs] exists. 
ProcessFiles - ERROR (version 6.1.0.1-196, build 1 from 2016-04-07 12.08.49 by buildguy) : Unable to open file appender for file [${LOGFOLDER}${LOGFILENAME}_20161005.txt] : org.pentaho.di.core.exception.KettleException: 
ProcessFiles - There was an error while trying to open file 'file:////<ServerPath>/QA/PentahoLogs/PartImportLog_20161005.txt' for writing 
ProcessFiles - Could not write to "file:////<ServerPath>/QA/PentahoLogs/PartImportLog_20161005.txt" because it is currently in use. 
ProcessFiles - ERROR (version 6.1.0.1-196, build 1 from 2016-04-07 12.08.49 by buildguy) : org.pentaho.di.core.exception.KettleException: 
ProcessFiles - There was an error while trying to open file 'file:////<ServerPath>/QA/PentahoLogs/PartImportLog_20161005.txt' for writing 
ProcessFiles - Could not write to "file:////<ServerPath>/QA/PentahoLogs/PartImportLog_20161005.txt" because it is currently in use. 
ProcessFiles - 
ProcessFiles - at org.pentaho.di.core.logging.LogChannelFileWriter.<init>(LogChannelFileWriter.java:78) 
ProcessFiles - at org.pentaho.di.core.logging.LogChannelFileWriter.<init>(LogChannelFileWriter.java:96) 
ProcessFiles - at org.pentaho.di.job.entries.job.JobEntryJob.execute(JobEntryJob.java:552) 
ProcessFiles - at org.pentaho.di.job.Job.execute(Job.java:723) 
ProcessFiles - at org.pentaho.di.job.Job.execute(Job.java:864) 
ProcessFiles - at org.pentaho.di.job.Job.execute(Job.java:864) 
ProcessFiles - at org.pentaho.di.job.Job.execute(Job.java:864) 
ProcessFiles - at org.pentaho.di.job.Job.execute(Job.java:545) 
ProcessFiles - at org.pentaho.di.job.Job.run(Job.java:435) 
ProcessFiles - Caused by: org.apache.commons.vfs2.FileSystemException: Could not write to "file:////<ServerPath>/QA/PentahoLogs/PartImportLog_20161005.txt" because it is currently in use. 
ProcessFiles - at org.apache.commons.vfs2.provider.DefaultFileContent.getOutputStream(DefaultFileContent.java:475) 
ProcessFiles - at org.pentaho.di.core.vfs.KettleVFS.getOutputStream(KettleVFS.java:289) 
ProcessFiles - at org.pentaho.di.core.logging.LogChannelFileWriter.<init>(LogChannelFileWriter.java:76) 
ProcessFiles - ... 8 more 

ответ

1

Читайте журнал:

ProcessFiles - не могли бы написать "файл: /////QA/PentahoLogs/PartImportLog_20161005.txt", потому что в настоящее время используется.

так что это означает, что другой процесс блокирует txt-файл.

+1

Файл не открыт ни одним пользователем, и этот журнал уникален для этой работы. Кажется, что сама работа создает блокировку файла, и я не знаю, почему. Я провел некоторое исследование, и, похоже, у Pentaho возникают проблемы с путями UNC, которые, вероятно, являются причиной неудачи. Когда мы указали на локальный диск, проблема не возникла. –

+0

попытайтесь установить маршрут относительно задания с помощью $ {Internal.Job.Filename.Directory} $ {LOGFOLDER} $ {LOGFILENAME} – jipipayo

1

Убедитесь, что путь/файл журнала не используется другим заданием в том же пользователю или другом пользователе репозитория.

+0

Спасибо и извините за это. Я позабочусь об этом со следующего раза. – Rahul

 Смежные вопросы

  • Нет связанных вопросов^_^