Soluciona un fallo de erpc worker

Busca el comienzo del mensaje que imprimió erpc worker y haz lo que dice su fila.
Esta página describe ERPC CLI v0.1.0-rc.4, una versión preliminar.

Mensajes de error y qué hacer

Los fallos de worker usan los códigos y estados de salida de erpc: consulta Errores y códigos de salida.
Mensaje (su comienzo)Por quéQué hacer
<app> cannot start without <SETTING>run.requires nombra un ajuste que nada estableceerpc worker secret put <SETTING>, establécelo en [vars] o despliega con la línea que lo establece (--grpc, --unlimited)
your key was added but does not get inEl agente SSH no firmó: 1Password estaba bloqueado o su solicitud no se permitióDesbloquea 1Password, permite la solicitud y vuelve a ejecutar el mismo comando. Continúa por donde iba
1Password could not …: authorization timeout1Password pidió aprobación y nadie respondióPermite la solicitud en 1Password y vuelve a ejecutarlo
<NAME> is empty; nothing was keptsecret put leyó una entrada estándar vacía: el shell no es un terminalEjecútalo en un terminal o pasa el valor por una tubería
the keystore is locked, and nobody is at a terminal …Un comando sin terminal necesita el keystore y no hay ningún desbloqueo guardadoerpc worker secret unlock en un terminal y, después, vuelve a ejecutar el comando
nothing is kept under keystore:… on this machineEl valor se guardó en el keystore de otra máquinaerpc worker secret put <NAME> --replace aquí; para la clave, trae el directorio keystore completo de esa máquina y su frase de contraseña
release <id> failed: …; the server went back to <previous>La release nueva no pasó su comprobación de saludConsulta erpc worker logs. La release anterior sigue en ejecución
… is locked: the trading key has not been handed overEl servidor se reinició, el agente falló o fue terminado y systemd lo volvió a iniciar, o se usó stop --lockerpc worker start
port <n> is taken: …Otro worker que se mantiene en ejecución tiene el mismo puerto de la comprobación de salud, u otro programa escucha en élDa a la aplicación un puerto propio en erpc.toml y vuelve a desplegar
release <id> runs, and its WAF did not come up: …El WAF no empezó a escuchar. Lo más habitual es que otro programa esté en waf.porterpc worker logs --waf; después, libera el puerto o cambia waf.port, y vuelve a desplegar. Mientras tanto, la aplicación sigue en ejecución
waf.<key> … (de check, deploy)Una clave de [waf] está fuera de sus límites, o waf.port es inferior a 1024 o coincide con el de run.port, el de SSH o el de la comprobación de saludCorrige erpc.toml. erpc worker check enumera todos los problemas a la vez
the WAF's port <port> was not opened to … (de firewall allow, deny, sync)El cambio dejaría entrar a alguien nuevo con reglas del WAF que el servidor todavía no aplicaerpc worker deploy: deja aplicadas las reglas nuevas y, después, abre el puerto
<kind> line <id> did not become active in <n> minutesLa línea todavía se está configurandoVuelve a desplegar para esperar más
OUT_OF_STOCKNo hay ningún servidor libre de ese plan en esa regiónDespliega con --region <another>
the start may or may not have gone through: …La solicitud salió y no volvió ninguna respuesta, o la respuesta fue 5xx, 408 o 429Vuelve a ejecutar el mismo comando: envía la misma solicitud
this purchase, or another of the account's, is still being made …La primera solicitud sigue en curso, u otra compra de la cuenta tiene su bloqueoVuelve a ejecutar el mismo comando en breve: envía la misma solicitud
… changed in 1Password since this command read itOtra máquina escribió mientras tanto el elemento del inventarioVuelve a ejecutar el comando
the shared RPC takes none of the account's API keys from this machine (<n> tried) (de secret put --from-account, erpc rpc call, erpc webhook run)Todas las claves de la cuenta se rechazaron desde esta máquina: las claves han finalizado, la cuenta no tiene ningún plan de RPC compartido activo o las claves están limitadas a otras direcciones, como la de un servidorEl ERPC Web Dashboard muestra la fecha de finalización de una clave y el plan, y crea una clave nueva. Para una clave limitada a la dirección del servidor: erpc worker secret put ERPC_API_KEY, escrita o pasada por una tubería
shared: … HTTP 401 (bench)El RPC compartido rechazó la clave: no hay ningún plan de RPC compartido activo, o la clave es incorrectaComprueba el plan en el dashboard, o establece ERPC_API_KEY
shared: … HTTP 429 (bench)El límite de solicitudes del planUsa --interval 150 o más

Una compra que erpc no puede registrar

Cuando un servidor o una línea puede haberse iniciado con una solicitud anterior que erpc no pudo registrar, revisa en el dashboard los servidores y las líneas de tu cuenta. Retoma un servidor con erpc worker deploy --vps <ID>, o finaliza lo que no quieras. Después, quita a mano la entrada de [env.<name>.starting] en erpc.toml: erpc no tiene ninguna opción que la quite, y hasta entonces el mismo comando envía la misma solicitud.

Si el servidor puede haber sido comprometido

  1. Ejecuta primero erpc worker backup off para revocar la clave de acceso de copia de seguridad del servidor. off no deshace lo que el servidor ya leyó.
  2. Saca los fondos de su clave de trading y sustituye sus secretos.
  3. Reconstruye el servidor desde el ERPC Web Dashboard y vuelve a desplegar.
Si la reconstrucción cambió la clave de host SSH del servidor, erpc rechaza el servidor hasta que actualices la clave fijada. Un despliegue recupera el código, no los datos de estado de la aplicación, que solo una copia de seguridad puede restaurar (Hacer una copia de seguridad de los datos de estado de la aplicación).

Lo que erpc nunca hace

  • Poner en una línea de comandos una clave, un secreto o una URL que contenga alguno de ellos.
  • Escribir en un archivo una clave de trading o un secreto de una aplicación, con una excepción: su keystore en tu máquina, donde cada uno se cifra con tu frase de contraseña. En un servidor, erpc worker backup on deja las claves de copia de seguridad propias del servidor en un archivo al que solo puede acceder root.
  • Iniciar algo sin mostrar su precio.
  • Dejar un servidor abierto: el firewall está activo antes de que la aplicación arranque por primera vez.
  • Conectarse a un servidor cuya clave de host no coincide con la fijada.
La guía del worker enumera todos los mensajes, incluidos los del WAF.