VerneMQ
Debug di MQTT su websocket su Envoy 1.28.0
Ho migrato la nostra installazione di Envoy da Envoy 1.11.1 a 1.28.0 e ora sto usando anche SNI per selezionare il certificato corretto. Una parte importante di questa migrazione è l'aggiornamento della sintassi della configurazione di Envoy dall'API v2 all'API v3. L'aggiornamento è andato bene, tranne che per il nostro servizio MQTT basato su websocket...
WeiterlesenPaho MQTT Client (Javascript), Envoy, VerneMQ: debug delle disconnessioni
Dopo aver distribuito picockpit sul mio server, è stato osservato un bug: il frontend web si disconnetteva a intervalli molto regolari. Questo non era presente nell'ambiente di sviluppo locale. Gli utenti di picockpit hanno riportato lo stesso bug. Ho fatto il debug oggi e ho applicato un hotfix. Si è scoperto che era un problema di tempistica. TL;DR come...
WeiterlesenVerneMQ come disconnettere forzatamente i client per linea di comando
C'è un comando vmq-admin session show che vi mostrerà i client attualmente connessi: Sfortunatamente, questo output è troncato per una larghezza totale di 80 caratteri (non importa quanti ne entrerebbero) e non c'è attualmente alcuna indicazione che lo sia. Vedi questo problema VerneMQ Github: https://github.com/vernemq/vernemq/issues/1200 Per disconnettere i client hai bisogno del client_id...
WeiterlesenVerneMQ Connessione MQTT persa (8): AMQJS0008I Socket chiuso. punti di montaggio diversi
Nella mia configurazione, sto riscrivendo i punti di montaggio dei client da quelli impostati dagli ascoltatori a punti di montaggio individuali a seconda del gruppo di client. L'idea alla base di questo è il perfetto isolamento della multi-tenancy sul server. I singoli client di gruppi diversi non sono quindi in grado di vedersi l'un l'altro, anche quando si iscrivono a "#"...
WeiterlesenCambiare il mountpoint sul webhook auth_on_register per VerneMQ
È possibile passare dei modificatori insieme al valore di ritorno "result": "ok" valore di ritorno del vostro webhook per VerneMQ. La documentazione ufficiale di VerneMQ fornisce alcuni esempi per la sintassi. cambiare il mountpoint È anche possibile cambiare il mountpoint, tuttavia il client_id apparentemente deve essere passato anche! Ho sollevato un...
WeiterlesenLunghezza massima delle credenziali (username, password, clientid) in MQTT v3.1.1
Il pacchetto CONNECT Il pacchetto di controllo MQTT CONNECT contiene sempre un carico utile. È il primo pacchetto che il client deve inviare al server dopo aver stabilito la connessione. Può essere inviato solo una volta dal client, se viene inviato un secondo pacchetto CONNECT, il server (broker) deve trattarlo come un protocollo...
WeiterlesenDebugging della connessione VerneMQ / problemi di autenticazione per la doppia autenticazione con webhooks e vmq_diversity
TL;DR https://github.com/vernemq/vernemq/blob/master/apps/vmq_diversity/src/vmq_diversity_plugin.erl include una dichiarazione che bloccherà l'autenticazione / autorizzazione attraverso qualsiasi altro canale se il tuo script Lua restituisce "false": porterà a: invece di provare altri plugin, come potresti aver supposto! Per evitare questo problema, semplicemente non restituire nulla dal tuo script Lua, se non vuoi...
WeiterlesenVerneMQ: esempio di econnrefused e Webhook
Webhooks attivate i webhooks in questo modo nel vostro vernemq.conf.local (.local quando si esegue su docker, in modo che le impostazioni in fondo al file persistano): plugins.vmq_webhooks = on vmq_webhooks.js_auth_on_register.hook = auth_on_register vmq_webhooks.js_auth_on_register.endpoint = http://container_picockpit:1200/example/path Notate che se il vostro webhook non è accessibile (econnrefused), anche l'autenticazione basata sul db fallirà ... ! Se si ottengono errori come...
WeiterlesenVerneMQ Docker sovrascrive la mia configurazione
Situazione Hai modificato vernemq.conf, solo per scoprire che la tua configurazione viene sovrascritta da VerneMQ al prossimo avvio (usando il contenitore Docker ufficiale). In particolare, la sezione con gli ascoltatori alla fine del file è "forzata". Soluzione VerneMQ viene avviato utilizzando uno script (start_vernemq). Lo script può essere visto qui: https://github.com/vernemq/docker-vernemq/blob/master/bin/vernemq.sh Il...
Weiterlesen