首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Solr - 如何从DataImportHandler接收失败导入的通知?

Solr是一个开源的搜索平台,它提供了强大的全文搜索和分析能力。Solr可以通过DataImportHandler(DIH)来导入数据,而当导入失败时,可以通过以下方式接收通知:

  1. 配置错误日志:在Solr的DIH配置文件中,可以设置一个错误日志文件,用于记录导入过程中的错误信息。可以通过查看该日志文件来获取导入失败的通知。配置示例:
代码语言:xml
复制
<entity name="example" query="SELECT * FROM example_table">
  <field column="id" name="id" />
  <field column="name" name="name" />
</entity>

<requestHandler name="/dataimport" class="solr.DataImportHandler">
  <lst name="defaults">
    <str name="config">data-config.xml</str>
    <str name="onError">continue</str>
    <str name="logFile">dataimport.log</str>
  </lst>
</requestHandler>

在上述示例中,logFile参数指定了错误日志文件的名称为dataimport.log

  1. 自定义处理器:Solr还提供了自定义处理器的功能,可以通过编写自定义处理器来处理导入失败的情况。自定义处理器可以继承org.apache.solr.handler.dataimport.DocBuilder类,并重写onError方法来处理导入失败的通知。示例代码如下:
代码语言:java
复制
import org.apache.solr.handler.dataimport.DocBuilder;

public class MyDocBuilder extends DocBuilder {
  @Override
  public void onError(Throwable t) {
    // 处理导入失败的通知
    System.out.println("导入失败:" + t.getMessage());
  }
}

然后,在Solr的solrconfig.xml文件中配置自定义处理器:

代码语言:xml
复制
<requestHandler name="/dataimport" class="solr.DataImportHandler">
  <lst name="defaults">
    <str name="config">data-config.xml</str>
    <str name="onError">myHandler</str>
  </lst>
  <lst name="last-components">
    <str>myHandler</str>
  </lst>
</requestHandler>

<searchComponent name="myHandler" class="com.example.MyDocBuilder" />

在上述示例中,myHandler指定了自定义处理器的名称,com.example.MyDocBuilder为自定义处理器的类路径。

通过以上两种方式,你可以从Solr的DataImportHandler接收到导入失败的通知,并根据实际需求进行处理。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Apache Solr DataImportHandler 远程代码执行漏洞(CVE-2019-0193) 分析

漏洞概述 2019年08月01日,Apache Solr官方发布预警[1],Apache Solr DataImport功能 在开启Debug模式时,可以接收来自请求"dataConfig"参数,这个参数功能与...Solr DataImportHandler可以批量把数据导入到索引库中,根据Solr文档[2]中描述,DataImportHandler有如下功能: •读取关系数据库中数据或文本数据•根据配置xml...(http/file方式)读取与建立索引数据•根据配置聚合来自多个列和表数据来构建Solr文档•使用文档更新Solr(更新索引、文档数据库等)•根据配置进行完全导入功能(full-import,完全导入每次运行时会创建整个索引...• schema.xml/managed-schema: 这里面定义了与数据源相关联字段(Field)以及Solr建立索引时该如何处理Field,它内容可以自己打开新建core下schema.xml...PoC进化历程 4.1 PoC第一阶段--数据库驱动+外连+无回显 根据官方漏洞预警描述[4],是DataImportHandler在开启Debug模式时,能接收dataConfig这个参数,这个参数功能与

2.1K20

Solr 如何自动导入来自 MySQL 数据

导入数据时注意事项 在笔记 2 中,可能在执行导入时会报错,那是因为还需要将 mysql-connector-java-xxx.jar 放入 solr-xxx/server/lib 文件夹下; 自动增量更新...将 solr-dataimport-scheduler.jar 放入 solr-xxx/server/solr-webapp/webapp/WEB-INF/lib 文件夹下; 在 ``solr-xxx...中 conf; solr-data-importscheduler.jar 中提取出 dataimport.properties 放入上一步创建 conf 文件夹中,并根据自己需要进行修改...and context see here: # http://wiki.apache.org/solr/DataImportHandler#dataimport.properties_example...command=full-import&clean=true&commit=true # 重做索引时间间隔开始时间 reBuildIndexBeginTime=1:30:00 总结 到此,我们就可以实现数据库自动增量导入

2K30

Apache Solr DataImportHandler远程代码执行漏洞(CVE-2019-0193) 分析

官方发布预警,Apache Solr DataImport功能 在开启Debug模式时,可以接收来自请求"dataConfig"参数,这个参数功能与data-config.xml一样,不过是在开启Debug...id,然后再根据文档id去文档信息库获取文档信息 Solr DataImportHandler Solr DataImportHandler可以批量把数据导入到索引库中,根据Solr文档中描述,DataImportHandler...) 根据配置进行完全导入功能(full-import,完全导入每次运行时会创建整个索引) 检测插入/更新字段并执行增量导入(delta-import,对增加或者被修改字段进行导入) 调度full-import...schema.xml/managed-schema:这里面定义了与数据源相关联字段(Field)以及Solr建立索引时该如何处理Field,它内容可以自己打开新建core下schema.xml/...,是DataImportHandler在开启Debug模式时,能接收dataConfig这个参数,这个参数功能与data-config.xml一样,不过是在开启Debug模式时方便通过此参数进行调试,

1.4K00

0700-6.2.0-使用Solr7对多种格式文件建立全文索引

本文主要介绍如何在CDH6.2.0集群中使用Solr7对多种格式文件建立全文索引。...managed-schema配置文件决定着solr如何建立索引,每个字段数据类型,分词方式等,老版本schema配置文件名字叫做schema.xml,配置方式就是手工编辑,5.0以后版本schema...org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/> fieldType:为field定义类型,最主要作用是定义分词器,分词器决定着如何文档中检索关键字...将solr-dataimporthandler-7.4.0.jar、solr-dataimporthandler-extras-7.4.0.jar和tika-app-1.19.1.jar三个jar包拷贝到集群所有节点...选择创建好collection,点击模板下【dataimport】菜单,选择【full-import】命令,然后单击下方【Execute】,将本地50个数据文件导入solr并创建index ?

1.8K20

Solr7使用Oracle数据源导入+中文分词

安装目录假设为#solr_home,本文#solr_home为apps/svr/solr  一、Oracle数据导入 1..../dist/" regex="solr-dataimporthandler-.*\.jar"> 4....文件, 而且这里有个问题就是,当重启Solr服务器后,项目中这个文件会被覆盖掉,目前还没有找到是哪里拷贝过来模板。...command=delta-import&clean=false&commit=true 差异导入 这里clean参数如果是true,会把之前数据清空掉,然后导入差异数据,在差异性导入时注意这个参数...,不然会把solr数据清空,然后导入差异性数据(这个差异是清空前差异),导致数据缺失; 建议访问低频时重建全量索引,如每天凌晨4点做一次全量导入,每10分钟做一次差异导入 FQA: 1.增量导入是以主键作为增量差异

79420

solr服务中集成IKAnalyzer中文分词器、集成dataimportHandler插件

昨天已经在Tomcat容器中成功部署了solr全文检索引擎系统服务;今天来分享一下solr服务在海量数据网站中是如何实现数据检索。...使用dataimportHandler插件批量导入数据,在solr服务中集成dataimportHandler插件步骤: 1、找到solrHome/collection1目录,创建一个lib目录,将插件所依赖...jar包和数据库驱动包拷贝到lib目录下(dataimportHandler插件依赖jar包可以在下载好solr压缩包中找到); 插件依赖jar包在dist目录下: ?.../collection1/conf/solrconfig.xml文件,添加如下配置内容: <requestHandler name="/dataimport" class="org.apache.<em>solr</em>.handler.dataimport.<em>DataImportHandler</em>...,<em>导入</em>操作在下图中已表明: ?

77280

- Apache Solr DataImport 远程命令执行分析

它旨在驱动功能强大文档检索应用程序 - 无论您需要根据用户查询将数据服务到何处,Solr 都可以来进行服务 Apache Solr DataImportHandler是一个可选但常用模块,可从数据库...(通过JDBC)、RSS、Web 页面和文件中导入数据,并且可根据配置文件中脚本对获取数据进行特定转换,同时这个模块配置文件不仅可以在服务端中通过配置文件指定,也可以用户请求 dataConfig...(默认情况为不开启) 漏洞介绍: Solr有一个可选DataImportHandler,用于数据库或URL导入数据,它可以在 dataConfig 参数脚本标签中包含任意 JavaScript...外部数据源中获取数据时候是根据 dataConfig (配置信息)来进行获取,同时也可以根据配置信息中脚本对获取到数据进行逐行转化 Poc 分析 Solr 支持 Dataimport 外部导入数据...full-import 这里 full-import 是 DataImportHandler Commands 其中一种操作,意味着数据全量导入 详情可参见:solr 文档 Commands 部分

1K30

【漏洞预警】Apache Solr远程代码执行漏洞 (CVE-2019-0193)处置手册及技术分析

版本:2.0 1 漏洞概述 近日,Apache Solr官方发布Apache Solr远程代码执行漏洞(CVE-2019-0193)安全通告,此漏洞存在于可选模块DataImportHandler中,DataImportHandler...4漏洞防护 4.1 官方升级 Solr8.2.0版本开始,使用问题参数dataConfig需要将java系统属性“enable.dih.dataconfigparam”设置为true。...: IPS:https://mp.weixin.qq.com/s/JsRktENQNj1TdZSU62N0Ww 5技术分析 5.1 前置概念 Dataimport Solr支持Dataimport导入自定义数据...在doFullImport中,首先会创建一个DocBuilder对象,DocBuilder主要功能是给定配置中创建Solr文档,同时会记录一些状态信息。...由于脚本内容完全是用户控制,当指定script含有恶意代码时就会被执行,下面看一下Solr如何执行javascript代码: 在读取EntityProcessorWrapper每一个元素时,是通过

1.1K10

Solr笔记1-Solr下载及单节点启动和配置

Solr 笔记 1-Solr 下载及单节点启动和配置 下载 官方最新下载连接[1] ?...1 启动 将下载后solr文件解压,然后进入solr-xxx/bin目录,打开命令窗口,输入如下命令,启动solr节点; # 开启某一端口 solr start -p 8983 关闭命令如下: # 关闭某一指定端口...创建 core 其实solr已经为我们提供了创建core模板,进入solr-xxx/server/solr/configsets即可发现,如下图: ?...当我们要创建自己core时,将上图中模板文件夹拷贝到solrHome,即第 4 步中标明solr-xxx/server/solr文件夹,然后将其重命名我们需要core名; ?...数据同步需要注意事项 因为solr数据是数据库中导入然后创建索引,所以需要相关jar包支持,即对应solr版本solr-dataimporthandler-xxx.jar、solr-dataimporthandler-extras-xxx.jar

61510

Solr 下载及单节点启动和配置

下载 官方最新下载连接 启动 将下载后solr文件解压,然后进入solr-xxx/bin目录,打开命令窗口,输入如下命令,启动solr节点; # 开启某一端口 solr start -p 8983...:8983或http://localhost:8983/solr,此时可以看到如下图相关信息; 项目文件夹说明 进入/server文件夹,其中主要用到文件夹功能如下图所示: 创建core 其实solr...已经为我们提供了创建core模板,进入solr-xxx/server/solr/configsets即可发现,如下图: 当我们要创建自己core时,将上图中模板文件夹拷贝到solrHome,即第...4步中标明solr-xxx/server/solr文件夹,然后将其重命名我们需要core名; 然后进入第3步访问界面,创建一个core, 成功创建core后,如下图所示: 数据同步需要注意事项...因为solr数据是数据库中导入然后创建索引,所以需要相关jar包支持,即对应solr版本solr-dataimporthandler-xxx.jar、solr-dataimporthandler-extras-xxx.jar

40540

CVE-2021-44548:Apache Solr 敏感信息泄露漏洞

Apache SolrDataImportHandler中存在一个不正确输入验证漏洞,可利用Windows UNC路径Solr主机调用网络上另一台主机SMB服务,或导致SMB攻击,从而造成:...-5.1.42-bin.jar wget https://mirror.shileizcc.com/Solr/solr-dataimporthandler-7.3.1.jar wget https://...mirror.shileizcc.com/Solr/solr-dataimporthandler-extras-7.3.1.jar 4)在solr-8.11.0\server\solr\core1\conf...\solrconfig.xml中添加DataImportHandler路由 <requestHandler name="/dataimport" class="org.apache.<em>solr</em>.handler.dataimport.<em>DataImportHandler</em>...下载链接: https://<em>solr</em>.apache.org/downloads.html 缓解措施: 确保只有受信任<em>的</em>客户端才能向<em>Solr</em><em>的</em><em>DataImporthandler</em>发出请求。

1.2K30

Solr 单节点启动与配置

数据同步需要注意事项 7. 总结 1. 下载 Solr 官方最新下载连接[1] 1 2....启动 将下载后solr文件解压,然后进入solr-xxx/bin目录,打开命令窗口,输入如下命令,启动solr节点; # 开启某一端口 solr start -p 8983 关闭命令如下: # 关闭某一指定端口...创建 core 其实solr已经为我们提供了创建core模板,进入solr-xxx/server/solr/configsets即可发现,如下图: image 当我们要创建自己core时,将上图中模板文件夹拷贝到...solrHome,即第 4 步中标明solr-xxx/server/solr文件夹,然后将其重命名我们需要core名; image 然后进入第 3 步访问界面,创建一个core, image 成功创建...数据同步需要注意事项 因为solr数据是数据库中导入然后创建索引,所以需要相关jar包支持,即对应solr版本solr-dataimporthandler-xxx.jar、solr-dataimporthandler-extras-xxx.jar

1.1K10
领券