No processor type exists with name [attachment]

Hello Dears,

I am getting below error, while trying to ingest pdf file:

“No processor type exists with name [attachment]"

 $params = [
                        'id' => 'attachment',
                        'body' => [
                            'description' => 'Extract attachment information',
                            'processors' => [
                                [
                                    'attachment' => [
                                        'field' => 'content',
                                        'indexed_chars' => -1
                                    ]
                                ]
                            ]
                        ]
                    ];
                    return $client->ingest()->putPipeline($params);
                    
                    $params = [
                        'index' => $name,
                        // 'type'  => 'type',
                        // 'id'    => 'document_id',
                        'pipeline' => 'attachment', 
                        'body'  => [
                            'content' => base64_encode(file_get_contents($file))
                        ]                
                    ];
                    return $client->index($params);

please your support, thank you very much.

You must install the attachment plugin and restart your cluster.

Dear,

I already installed attachment plugin, how can i verify please?

I am wondering i installed two versions of elastic, and installed the attachment plugin on the wrong one, do you think this cause the problem?

When i run brew search Elasticsearch, i got Elasticsearch and Elasticsearch@6

This should help:

GET /_cat/plugin?v

Most likely yes.

Dear,

I am very confused, i am very new in elastic, I am using php client and want to upload pdf files to elastic cloud, even though there is no running Elasticsearch on my computer, i am able to search using below, please how can i use attachment plugin if i don't use local Elasticsearch :


use Elasticsearch\ClientBuilder;

  self::$client = ClientBuilder::create()
            ->setElasticCloudId('My_deployment:ZWFzdHVzMi5henVyZS5lbGFzdGljLWNsb3VkLmNvbTo5MjQzJDkzOTU1YWJlYTQ4OTQwZGU5Y2EzOWIXXXXXXXXg4NGJiMDVjMDRhYTE1')
            ->setBasicAuthentication('elastic', 'XXXXX')
            // ->setApiKey('private-key','private-XXXXXXXX')
            ->build();

this is no running process as per the image

You need to install the attachment plugin in your cloud deployment. Edit the settings of the cloud deployment. IIRC it's in Elasticsearch settings. Add the attachment plugin, save and wait for the cluster to do its rolling upgrade.

Yaaay, It worked, I added the plugin to my deployment on cloud and that solved the issue, saved my life, thank you very much..