Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

No processor type exists with name [opennlp] #29

Closed
mattiabaldari opened this issue Nov 23, 2018 · 12 comments
Closed

No processor type exists with name [opennlp] #29

mattiabaldari opened this issue Nov 23, 2018 · 12 comments

Comments

@mattiabaldari
Copy link

Hi Spinscale,

sorry to bother you again, but I really don't get how to install your this repo.
I am in the situation where I installed ElastcSearch and Kibana (I know they are now required, but I need them) and I want to give the following command:

curl -X PUT "localhost:9200/_ingest/pipeline/opennlp-pipeline" -H 'Content-Type: application/json' -d'
{
  "description" : "A pipeline to do named entity extraction",
  "processors" : [
    {
      "opennlp" : {
        "field": "my_field",
        "ignore_missing": true
      }
    }
  ]
}'

this way I should add data to your plugin.
Sadly when I give that command I receive the following error:

{"error":
  {"root_cause":
    [{ "type":"parse_exception",
       "reason":"No processor type exists with name [opennlp]", 
       "header":{"processor_type":"opennlp"}
    }],
  "status":400}

So if no processor exists with that name I thought maybe the installation hasn't finish correctly.
To install it I followed the following steps:

  1. Download it and from within the downloaded folder I ran:
    ./gradlew clean check

  2. Then I tried to give:
    bin/elasticsearch-plugin install file://./Downloads/elasticsearch-ingest-opennlp-master/build/distributions/ingest-opennlp-6.5.0.1-SNAPSHOT.zip

but I receive an error:

ERROR: plugin directory [./Downloads/elasticsearch-ingest-opennlp-master/build/cluster/integTestCluster node0/elasticsearch-6.5.0/plugins/ingest-opennlp] already exists; if you need to update the plugin, uninstall it first using command 'remove ingest-opennlp'

so I really don't know what to do. Do you have some clue of where the problem is?

Note: Just to be sure, the bin/elasticsearch-plugin folder from where I ran the command was in

elasticsearch-ingest-opennlp-master/build/cluster/integTestCluster node0/elasticsearch-6.5.0

@mattiabaldari
Copy link
Author

Please, let me know if I could give you some more information to clearify the situation

@mattiabaldari
Copy link
Author

@spinscale nothing?

@spinscale
Copy link
Owner

spinscale commented Nov 30, 2018

can you share the output of plugins/ingest-opennlp (just sth like find plugins -type f should be sufficient.

Also, when elasticsearch is running, can you share the output from the /_nodes/stats endpoint as well.

Lastly, please share the log output when starting elasticsearch, from the first minute.

Thanks!

@spinscale
Copy link
Owner

can you explain why you tried to install that plugin in the tests directory named elasticsearch-ingest-opennlp-master/build/cluster/integTestCluster node0/elasticsearch-6.5.0? I do not understand the intention behind this. Can you clarify?

@mattiabaldari
Copy link
Author

Hello Spinscale,

I just followed the README. In particular I did the following:

  1. Downloaded the project, enter the project folder
  2. run ./gradlew clean check
  3. Then I should install it giving the command:
    bin/plugin install file:///path/to/elasticsearch-ingest-opennlp/build/distribution/ingest-opennlp-X.Y.Z-SNAPSHOT.zip
    but I am not getting how to run it. Where the bin/plugin should be located?

Thank you

@spinscale
Copy link
Owner

if you only want to use the plugin, you can download it from the github releases.

/bin/elasticsearch-plugin refers to your installation of Elasticsearch (the path is depending on where your unzipped your distribution, or if you installed the debian or RPM package).

@mattiabaldari
Copy link
Author

Ok, but if I need to install it on my elasticsearch instance, is that command right?

@mattiabaldari
Copy link
Author

@spinscale

@elastickent
Copy link

elastickent commented Dec 13, 2018

@meru3m If possible, I suggest reinstalling with the bundle (.zip file) plugin instead of building it locally.

To do that for elasticseasrch 6.5.3:

(adjust the path as needed, these are specific to CentOS 7)
export ES_PATH_CONF=/etc/elasticsearch;/usr/share/elasticsearch/bin/elasticsearch-plugin remove ingest-opennlp

export ES_PATH_CONF=/etc/elasticsearch;/usr/share/elasticsearch/bin/elasticsearch-plugin install https://github.com/spinscale/elasticsearch-ingest-opennlp/releases/download/6.5.3.1/ingest-opennlp-6.5.3.1.zip

Make sure you have downloaded (in the right directory) and have appended the model file config to the elasticsearch.yml file.
# OpenNLP
ingest.opennlp.model.file.persons: en-ner-persons.bin
ingest.opennlp.model.file.dates: en-ner-dates.bin
ingest.opennlp.model.file.locations: en-ner-locations.bin

Restart elasticsearch while tailing the logfile to insure the plugin was loaded, it should look like this:

[2018-12-12T10:18:38,694][INFO ][o.e.p.PluginsService ] [master-2] loaded plugin [ingest-opennlp]

Or by the API

curl -XGET "https://localhost:9200/_nodes/ingest"

Hopefully then opennlp processor will then be accessible to your ingest pipeline.

Here's screenshot of using opennlp on a twitter feed displayed through Kibana's graph app.

image

@mattiabaldari
Copy link
Author

Thank you @elastickent I'll try and post the result here

@mattiabaldari
Copy link
Author

mattiabaldari commented Jan 2, 2019

Hi @elastickent,

just to be sure, when you wrote:

"Make sure you have downloaded (in the right directory) and have appended the model file config to the elasticsearch.yml file...."

could you specify where should be the "right" directory?

@elastickent
Copy link

On centos, for me it worked by dropping them into:
/etc/elasticsearch/ingest-opennlp

e.g.

[root@sensor-01 ingest-opennlp]# pwd
/etc/elasticsearch/ingest-opennlp
[root@sensor-01 ingest-opennlp]# tree
├── en-ner-dates.bin
├── en-ner-locations.bin
└── en-ner-persons.bin

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants