From cad6540f4289fb6b22db3ada7304b2b404dab652 Mon Sep 17 00:00:00 2001 From: Jesse de Wit Date: Fri, 12 May 2023 09:22:11 +0200 Subject: [PATCH] always use mempool api --- itest/lspd_node.go | 1 - main.go | 52 +++++++++++++++++++++++----------------------- sample.env | 6 ++---- 3 files changed, 28 insertions(+), 31 deletions(-) diff --git a/itest/lspd_node.go b/itest/lspd_node.go index c5f5aa5..e4f01b3 100644 --- a/itest/lspd_node.go +++ b/itest/lspd_node.go @@ -129,7 +129,6 @@ func newLspd(h *lntest.TestHarness, name string, nodeConfig *config.NodeConfig, nodes, fmt.Sprintf("DATABASE_URL=%s", postgresBackend.ConnectionString()), fmt.Sprintf("LISTEN_ADDRESS=%s", grpcAddress), - "USE_MEMPOOL_FEE_ESTIMATION=true", "MEMPOOL_API_BASE_URL=https://mempool.space/api/v1/", "MEMPOOL_PRIORITY=economy", } diff --git a/main.go b/main.go index c82a25a..784622c 100644 --- a/main.go +++ b/main.go @@ -41,34 +41,34 @@ func main() { log.Fatalf("need at least one node configured in NODES.") } - var feeEstimator chain.FeeEstimator - var feeStrategy chain.FeeStrategy - useMempool := os.Getenv("USE_MEMPOOL_FEE_ESTIMATION") == "true" - if useMempool { - mempoolUrl := os.Getenv("MEMPOOL_API_BASE_URL") - feeEstimator, err = mempool.NewMempoolClient(mempoolUrl) - if err != nil { - log.Fatalf("failed to initialize mempool client: %v", err) - } - - envFeeStrategy := os.Getenv("MEMPOOL_PRIORITY") - switch strings.ToLower(envFeeStrategy) { - case "minimum": - feeStrategy = chain.FeeStrategyMinimum - case "economy": - feeStrategy = chain.FeeStrategyEconomy - case "hour": - feeStrategy = chain.FeeStrategyHour - case "halfhour": - feeStrategy = chain.FeeStrategyHalfHour - case "fastest": - feeStrategy = chain.FeeStrategyFastest - default: - feeStrategy = chain.FeeStrategyEconomy - } - log.Printf("using mempool api for fee estimation: %v, fee strategy: %v:%v", mempoolUrl, envFeeStrategy, feeStrategy) + mempoolUrl := os.Getenv("MEMPOOL_API_BASE_URL") + if mempoolUrl == "" { + log.Fatalf("No mempool url configured.") } + feeEstimator, err := mempool.NewMempoolClient(mempoolUrl) + if err != nil { + log.Fatalf("failed to initialize mempool client: %v", err) + } + + var feeStrategy chain.FeeStrategy + envFeeStrategy := os.Getenv("MEMPOOL_PRIORITY") + switch strings.ToLower(envFeeStrategy) { + case "minimum": + feeStrategy = chain.FeeStrategyMinimum + case "economy": + feeStrategy = chain.FeeStrategyEconomy + case "hour": + feeStrategy = chain.FeeStrategyHour + case "halfhour": + feeStrategy = chain.FeeStrategyHalfHour + case "fastest": + feeStrategy = chain.FeeStrategyFastest + default: + feeStrategy = chain.FeeStrategyEconomy + } + log.Printf("using mempool api for fee estimation: %v, fee strategy: %v:%v", mempoolUrl, envFeeStrategy, feeStrategy) + databaseUrl := os.Getenv("DATABASE_URL") pool, err := postgresql.PgConnect(databaseUrl) if err != nil { diff --git a/sample.env b/sample.env index f266c14..b595154 100644 --- a/sample.env +++ b/sample.env @@ -30,10 +30,8 @@ CHANNELMISMATCH_NOTIFICATION_TO='["Name1 "]' CHANNELMISMATCH_NOTIFICATION_CC='["Name2 ","Name3 "]' CHANNELMISMATCH_NOTIFICATION_FROM="Name4 " -# By default lspd uses the fee estimation from the lightning node it is connected -# to for opening new channels. You can use mempool fee estimation instead by -# setting below variables. -USE_MEMPOOL_FEE_ESTIMATION=true +# lspd uses the fee estimation from mempool.space for opening new channels. +# Change below setting for you own mempool instance. MEMPOOL_API_BASE_URL=https://mempool.space/api/v1/ # Priority to use for opening channels when using the mempool api.