Skip to content

Troubleshooting

Plugin doesn’t appear in evonic plugin list or doesn’t respond to events.

  • Check that plugin.json is valid JSON: cat plugins/my_plugin/plugin.json | python3 -m json.tool
  • Verify the plugin directory is in the correct location
  • Run evonic plugin reload my_plugin to force a reload
  • Check plugin logs: evonic plugin logs my_plugin

Plugin loads but event handlers don’t execute.

  • Ensure event names in plugin.json match exactly (case-sensitive)
  • Verify handler function names follow the on_<event_name> pattern
  • Check that the plugin is enabled: evonic plugin enable my_plugin
  • Review logs for errors: evonic plugin logs my_plugin --limit 50

Plugin config values aren’t being read or applied.

  • Verify variable names in plugin.json match exactly (case-sensitive)
  • Check config values: evonic plugin config my_plugin
  • Set config values: evonic plugin config my_plugin --set KEY value
  • Reload the plugin after changing config: evonic plugin reload my_plugin

sdk.http_request() returns errors or times out.

  • Check the URL is correct and accessible
  • Increase timeout: sdk.http_request(..., timeout=60)
  • Verify the external service is running and reachable
  • Check logs for detailed error messages: sdk.log(response.get('error'), level="error")

Plugin can’t read/write files or access certain resources.

  • Ensure the Evonic process has read/write permissions to the plugins directory
  • Check file permissions: ls -la plugins/my_plugin/
  • Run with appropriate user permissions
  • Use --force flag to overwrite: evonic plugin install ./my_plugin.zip --force
  • Or uninstall first: evonic plugin uninstall my_plugin
  • Verify handler function name matches event name: on_<event_name>
  • Check for typos in plugin.json event names
  • Validate JSON syntax: python3 -m json.tool plugin.json
  • Ensure all required fields are present: id, name, version, description, events
  • Check that handler.py is in the plugin root directory
  • Verify there are no syntax errors in handler.py: python3 -m py_compile handler.py