启用跟踪

如果指定了 FILTER 索引参数的 CONTINUE_ON_ERROR,那么您还必须设置跟踪日志,以捕获在创建索引、在表中插入行或更新行之前过滤文档时所遇到的任何错误。如果将要过滤的文档的格式不在受支持格式的列表之中,那么通常会出现过滤错误。请参阅可以过滤的文档格式,以获取 GBase 8s Excalibur Text Search DataBlade 模块支持的格式的完整列表。
重要: 跟踪日志不同于记录来自过滤服务器的消息中描述的过滤日志文件。过滤日志文件包含来自过滤服务器的消息;跟踪日志包含来自 GBase 8s Excalibur Text Search DataBlade 模块 的跟踪消息。
要启用跟踪,请在 DB-Access 中执行 etx_FilterTraceFile() 过程:
EXECUTE PROCEDURE EtxFilterTraceFile ('/tmp/etx_errors');

将跟踪消息写入文件 /tmp/etx_errors

如果将要过滤的文档的格式不在受支持格式的列表之中,那么您可能在日志文件中收到一条与以下类似的消息:
10:29:17  Filter Message: Could not filter document
10:29:17  filter failed for row(row:257 fragid:1048870),ignoring error

在该示例中,在创建 etx 索引时指定了索引参数 FILTER='CONTINUE_ON_ERROR'。如果已指定 STOP_ON_ERROR,那么最后一行将显示 stopping,而不是 ignoring error

请参阅 EtxFilterTraceFile() 例程,以获取有关该过程的详细信息。

提示: 要启用更详细的跟踪,请使用 TxtSetTrace() 过程:
EXECUTE PROCEDURE TxtSetTrace('EtxExcalIndex 1', '/tmp/etx_level1_msgs');

EtxExcalIndex 1 指定 1 级或过滤跟踪。您还可以指定 EtxExcalIndex 2 来启用 2 级跟踪(主索引操作的消息,例如,插入和扫描)以及 EtxExcalIndex 3 来启用 3 级跟踪(有关搜索引擎评估的调整参数的消息)。