No handlers could be found for logger "curator.validators.SchemaCheck"

Hey, I am trying to setup curator ' /usr/bin/curator --config /root/curator.yml /root/action_file.yml' and getting errors below.

/usr/bin/curator --config /root/curator.yml /root/action_file.yml
No handlers could be found for logger "curator.validators.SchemaCheck"
Traceback (most recent call last):
File "/usr/bin/curator", line 9, in
load_entry_point('elasticsearch-curator==4.1.2', 'console_scripts', 'curator')()
File "/usr/lib/python2.7/site-packages/curator/curator.py", line 5, in main
cli()
File "/usr/lib/python2.7/site-packages/click/core.py", line 716, in call
return self.main(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/click/core.py", line 696, in main
rv = self.invoke(ctx)
File "/usr/lib/python2.7/site-packages/click/core.py", line 889, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "/usr/lib/python2.7/site-packages/click/core.py", line 534, in invoke
return callback(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/curator/cli.py", line 114, in cli
client_args = process_config(config)
File "/usr/lib/python2.7/site-packages/curator/config_utils.py", line 46, in process_config
config = test_config(yaml_file)
File "/usr/lib/python2.7/site-packages/curator/config_utils.py", line 20, in test_config
'Client Configuration', 'full configuration dictionary').result()
File "/usr/lib/python2.7/site-packages/curator/validators/schemacheck.py", line 68, in result
self.test_what, self.location, self.badvalue, self.error)
curator.exceptions.ConfigurationError: Configuration: Client Configuration: Location: full configuration dictionary: Bad Value: "{'loglevel': 'INFO', 'blacklist': ['elasticsearch', 'urllib3'], 'logformat': 'default', 'hosts': ['elasticsearch'], 'timeout': 30, 'use_ssl': False, 'master_only': False, 'port': 9200, 'ssl_no_validate': False}", extra keys not allowed @ data['client']['loglevel']. Check configuration file.

My curator.yml is simple :slight_smile:

client:
hosts:
- "elasticsearch"
port: 9200
url_prefix:
use_ssl: False
certificate:
client_cert:
client_key:
ssl_no_validate: False
http_auth:
timeout: 30
master_only: False

logging:
loglevel: INFO
logfile:
logformat: default
blacklist: ['elasticsearch', 'urllib3']

same with action_file.yml

actions:
1:
action: delete_indices
description: >-
Delete indices older than 45 days (based on index name), for logstash-
prefixed indices. Ignore the error if the filter does not result in an
actionable list of indices (ignore_empty_list) and exit cleanly.
options:
ignore_empty_list: True
timeout_override:
continue_if_exception: False
disable_action: True
filters:
- filtertype: pattern
kind: prefix
value: pa-traffic-
exclude:
- filtertype: age
source: name
direction: older
timestring: '%Y.%m.%d'
unit: days
unit_count: 2
exclude:

I'm having the same issues. I copied the curator.yml file from the documentation, same for the action file.

It works by removing this from the curator.yml file:

I guess the documentation is wrong.

Is the indentation properly formatted? I can't tell from what you've pasted, but the error:

extra keys not allowed @ data['client']['loglevel']. Check configuration file.

suggest that loglevel is a sub key of client instead of logging, where it belongs. It should be indented to be properly read, and it's that way in the example:

client:
  hosts:
    - "elasticsearch"
  port: 9200
  url_prefix:
  use_ssl: False
  certificate:
  client_cert:
  client_key:
  ssl_no_validate: False
  http_auth:
  timeout: 30
  master_only: False

logging:
  loglevel: INFO
  logfile:
  logformat: default
  blacklist: ['elasticsearch', 'urllib3']

The integration testing uses similar examples, and they do work, if properly indented.

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.