3

我试图在 Talend 中实现日志记录。所以我用普通的组件做了一个工作,我通过 Twarn 和 Tdie 记录了错误、信息和调试。使用 Logcatcher ,我将日志分为调试和错误两个文件。这部分工作正常。

现在我做了两份工作,

首先:- 使用 trowgenerator 生成线,然后发送到 tmap 和从 tmap,我根据某些条件发送到两个 twarn 组件。

第二:- 具有 tlogcatcher、t_filterrow 并根据某些条件分离到两个文件的作业。

所以我正在与第一个作业并行运行第二个作业以捕获日志,但它不起作用。

我尝试了几种选择并停留在这一点上。

主要思想是有一个通用的日志组件,可以插入到日志的任何作业中。

有什么方法可以实现吗?

4

3 回答 3

1

以下是弹出的3种方式:

log4j:企业版内置了log4j,这意味着你可以在tWarn/tDie中设置一个调试级别,并配置log4j将它们放到不同的文件中。(使用它时,我发现最好将警告作为我自己的信息级别日志,因为 talends 信息级别太深了。)我确信 log4j 也可以被“入侵”到开放工作室。那会解决你的问题。https://exchange.talend.com搜索log4j的时候有很多结果,你应该看看。

joblet:如果您更喜欢当前的方式,我会为您提供 2 个选项。首先是尝试创建一个joblet,但是从多个作业中使用同一个文件不是一个好主意,并且可能会导致错误。这不是一个很好的解决方案,但如果我们只讨论需要生成 2 个文件的 1 个作业,它就可以工作。

项目级日志记录:您可以尝试启用项目级日志记录,但这会将所有内容记录到文件中。它基本上意味着将 logcatcher 输出重定向到文件。那是 1 个文件而不是 2 个文件,但至少它有效。https://help.talend.com/display/TalendOpenStudioforBigDataUserGuide520EN/2.6+Customizing+project+settings(统计和日志)

对于您需要的东西,确实没有很好的解决方案。

于 2017-01-26T19:43:28.780 回答
1

Talend 具有可用的内置日志记录功能,并且非常易于设置。第一步:创建AMC数据库。步骤 2. 设置记录的项目级别属性。步骤 3. 检查 AMC 数据库的日志。将记录所有错误和 tWarns。可选步骤 4:根据 AMC 数据库中的记录数据创建报告。

您可以记录到文件而不是 db,但记录到 db 允许更强大的查询和报告。此外,如果您在 TAC 之外运行作业,您可以将 AMC 加入 TAC 数据库,以获取有关您的作业的一些非常有用的报告。

您可以登录:

  • 错误和警告
  • 统计数据(工作持续时间)
  • FlowMeter(数据流指标)

屏幕 1 显示了 Talend Studio 中的项目设置

在此处输入图像描述

屏幕 2 显示了来自 AMC db、日志表的查询。请注意,还有另外两张表格,一张用于统计信息,另一张用于流量。另请注意,在所选行中有来自 tWarn 的消息。

在此处输入图像描述

于 2017-01-26T23:21:03.810 回答
0

感谢大家的扩展支持。我能够实现我想要实现的目标。

我创建了一个标准作业,它提供 twarn 和 tdie 日志。然后我有一个joblet,它捕获日志并根据错误或信息/调试分发日志。

于 2017-01-27T14:02:34.533 回答