Transaction Listener configuration

Goal

Tx-Listener is an Orchestrate worker responsible for:

  • Catching transactions receipts;
  • Loading & reconstituting Transaction Envelope by interrogating API-Context-Store.

It consumes messages from tx-signer kafka topic.

Quick-Start

Configure application

The application can be configured through flags or environment variables, you can run the help run command line:

Usage:
  orchestrate tx-listener run [flags]

Flags:
      --envelope-store-url string           URL (GRPC target) Envelope Store (See https://github.com/grpc/grpc/blob/master/doc/naming.md)
                                            Environment variable: "ENVELOPE_STORE_URL" (default "localhost:8080")
      --eth-client-url strings              Ethereum client url
                                            Environment variable: "ETH_CLIENT_URL"
  -h, --help                                help for run
      --kafka-group string                  Address of Kafka server to connect to.
                                            Environment variable: "KAFKA_GROUP" (default "group-e2e")
      --kafka-tls-ca-cert-file string       CA cert file Path.
                                            Environment variable: "KAFKA_TLS_CA_CERT_FILE"
      --kafka-tls-client-cert-file string   Client Cert File Path.
                                            Environment variable: "KAFKA_TLS_CLIENT_CERT_FILE"
      --kafka-tls-client-key-file string    Client key file Path.
                                            Environment variable: "KAFKA_TLS_CLIENT_KEY_FILE"
      --kafka-tls-enabled                   Whether or not to use TLS when connecting to the broker (defaults to false).
                                            Environment variable: "KAFKA_TLS_ENABLED"
      --kafka-tls-insecure-skip-verify      Controls whether a client verifies the server's certificate chain and host name. If InsecureSkipVerify is true, TLS accepts any certificate presented by the server and any host name in that certificate. In this mode, TLS is susceptible to man-in-the-middle attacks. This should be used only for testing.
                                            Environment variable: "KAFKA_TLS_INSECURE_SKIP_VERIFY"
      --kafka-url strings                   URL (addresses) of Kafka server(s) to connect to.
                                            Environment variable: "KAFKA_URL" (default [localhost:9092])
      --listener-block-backoff duration     Backoff time to wait before retrying after failing to find a mined block
                                            Environment variable: "LISTENER_BLOCK_BACKOFF" (default 1s)
      --listener-block-limit int            Limit number of blocks that can be prefetched while listening
                                            Environment variable: "LISTENER_BLOCK_LIMIT" (default 40)
      --listener-start strings              Position listener should start listening from (format <chainID>:<blockNumber>-<txIndex> or <chainID>:<blockNumber>) (e.g. 42:2348721-5 or 3:latest)
                                            Environment variable: "LISTENER_START"
      --listener-start-default string       Default block position listener should start listening from (one of 'latest', 'oldest', 'genesis')
                                            Environment variable: "LISTENER_START_DEFAULT" (default "oldest")
      --listener-tracker-depth int          Depth at which we consider a block final (to avoid falling into a re-org)
                                            Environment variable: "LISTENER_TRACKER_DEPTH"
      --topic-tx-decoder string             Kafka topic for envelopes waiting for their receipt decoded
                                            Environment variable: "TOPIC_TX_DECODER" (default "topic-tx-decoder")

Warning

♦ Default values can be changed by using environment variables.

♦ Environment variables will be overwritten by Flags values.