CRASH REPORT Process with 0 neighbours crashed

hi there
ejabberd service stopped
and when I review error log I noticed this error message at the end of it

[error] <0.14321.1> CRASH REPORT Process <0.14321.1> with 0 neighbours crashed with reason: no match of right hand value <<>> in ejabberd_http:extract_path_query/1 line 394

so what is the problem and how to solve it
Thanks

That code parses an HTTP

That code parses an HTTP query sent by some web client, or a BOSH Jabber client, etc.

Just quickly thinking, I see three possibilities:
1. A client found a bug in ejabberd, a very rare bug that crashes all the server. Usually bugs simply close the client connection, not all the server.

2. An attacker found a way to crash ejabberd, by sending some malformed or problematic HTTP query.

3. That error line is not related to the problem, it's just a coincidence. If ejabberd stops more times, and that line is also present at the end of the log, then go to 1. or 2.

When ejabberd crashed, did it provide an erland crash dump file (a binary file)?

actually /this problem was

actually /this problem was repeated 4 times with the same error message before I decide to ask

if the first point was the real reason, then how to block web clients, is it possible to block it ?

When ejabberd crashed, did it provide an erland crash dump file (a binary file)?
where is the default lication of dumped files? in order to check it

thanks

Check in the listen section,

Check in the listen section, the ejabberd_http service, what you have nabled but not used, like http_bind, websocket or register:

  - 
    port: 5280
    module: ejabberd_http
    request_handlers:
      "/websocket": ejabberd_http_ws
    ##  "/pub/archive": mod_http_fileserver
    web_admin: true
    http_bind: true
    register: true
    captcha: true

In my case the crash dumps are left in the same place that the ejabberd logs.

thanks. in order to keep

thanks.
in order to keep ejabbed running, I've tried to run script that keeps checking ejabberd service status in order to run it when it stops, but the problem was that when you want to test ejabberd status using(service ejabberd status) thes output appears

Starting ejabberd...
Attempting to create directory /opt/ejabberd-16.01/perl5
Unable to create /opt/ejabberd-16.01/perl5: Permission denied at /usr/local/share/perl5/local/lib.pm line 678.
BEGIN failed--compilation aborted.
ERROR: The ejabberd node 'ejabberd@localhost' is already running.

so how to solve this issue ?

thanks for your rapid reply :)

You can also try: $

You can also try:

$ ejabberdctl status
The node ejabberd@localhost is started with status: started
ejabberd 16.12.12 is running in that node

And also the less detailed:

$ epmd -names
epmd: up and running on port 4369 with data:
name ejabberd at port 38074
Syndicate content