[
https://issues.apache.org/jira/browse/NUTCH-2132?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15428824#comment-15428824
]
ASF GitHub Bot commented on NUTCH-2132:
---------------------------------------
Github user lewismc commented on a diff in the pull request:
https://github.com/apache/nutch/pull/138#discussion_r75551658
--- Diff: src/java/org/apache/nutch/publisher/NutchPublishers.java ---
@@ -0,0 +1,83 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package org.apache.nutch.publisher;
+
+import org.apache.hadoop.conf.Configuration;
+import org.apache.hadoop.conf.Configured;
+import org.apache.nutch.plugin.PluginRepository;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public class NutchPublishers extends Configured implements NutchPublisher{
+
+ private static final Logger LOG =
LoggerFactory.getLogger(NutchPublishers.class);
+ private NutchPublisher[] publishers;
+
+ public NutchPublishers(Configuration conf) {
+ // TODO Auto-generated constructor stub
+ this.publishers = (NutchPublisher[])PluginRepository.get(conf).
+ getOrderedPlugins(NutchPublisher.class,
+ NutchPublisher.X_POINT_ID, "publisher.order");
+ }
+
+ @Override
+ public boolean setConfig(Configuration conf) {
+ // TODO Auto-generated method stub
+ boolean success = false;
+ try {
+ for(int i=0; i<this.publishers.length; i++) {
+ success |= this.publishers[i].setConfig(conf);
+ if(success)
+ LOG.info("Successfully loaded " +
+ this.publishers[i].getClass().getName() +" publisher");
+ }
+ }catch(Exception e) {
+ LOG.warn("Error while loading publishers : " + e.getMessage());
--- End diff --
Parameterized logging please.
> Publisher/Subscriber model for Nutch to emit events
> ----------------------------------------------------
>
> Key: NUTCH-2132
> URL: https://issues.apache.org/jira/browse/NUTCH-2132
> Project: Nutch
> Issue Type: New Feature
> Components: fetcher, REST_api
> Reporter: Sujen Shah
> Assignee: Chris A. Mattmann
> Labels: memex
> Fix For: 1.13
>
> Attachments: NUTCH-2132.patch, NUTCH-2132.v2.patch,
> PubSub_routingkey.patch
>
>
> It would be nice to have a Pub/Sub model in Nutch to emit certain events (ex-
> Fetcher events like fetch-start, fetch-end, a fetch report which may contain
> data like outlinks of the current fetched url, score, etc).
> A consumer of this functionality could use this data to generate real time
> visualization and generate statics of the crawl without having to wait for
> the fetch round to finish.
> The REST API could contain an endpoint which would respond with a url to
> which a client could subscribe to get the fetcher events.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)