diff --git a/cmd/config.go b/cmd/config.go index 1db10db..675340d 100644 --- a/cmd/config.go +++ b/cmd/config.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/cmd/evmconnect.go b/cmd/evmconnect.go index 80ba7a4..5ff9cf0 100644 --- a/cmd/evmconnect.go +++ b/cmd/evmconnect.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/cmd/version.go b/cmd/version.go index 3d8f20d..3b13d5f 100644 --- a/cmd/version.go +++ b/cmd/version.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/config.md b/config.md index be11a3c..c133378 100644 --- a/config.md +++ b/config.md @@ -278,8 +278,8 @@ |Key|Description|Type|Default Value| |---|-----------|----|-------------| |address|The IP address on which the metrics HTTP API should listen|`int`|`127.0.0.1` -|enabled|Enables the metrics API|`boolean`|`false` -|path|The path from which to serve the Prometheus metrics|`string`|`/metrics` +|enabled|Deprecated: Please use 'monitoring.enabled' instead|`boolean`|`false` +|path|Deprecated: Please use 'monitoring.metricsPath' instead|`string`|`/metrics` |port|The port on which the metrics HTTP API should listen|`int`|`6000` |publicURL|The fully qualified public URL for the metrics API. This is used for building URLs in HTTP responses and in OpenAPI Spec generation|URL `string`|`` |readTimeout|The maximum time to wait when reading from an HTTP connection|[`time.Duration`](https://pkg.go.dev/time#Duration)|`15s` @@ -313,6 +313,46 @@ |keyFile|The path to the private key file for TLS on this API|`string`|`` |requiredDNAttributes|A set of required subject DN attributes. Each entry is a regular expression, and the subject certificate must have a matching attribute of the specified type (CN, C, O, OU, ST, L, STREET, POSTALCODE, SERIALNUMBER are valid attributes)|`map[string]string`|`` +## monitoring + +|Key|Description|Type|Default Value| +|---|-----------|----|-------------| +|address|Listener address|`int`|`127.0.0.1` +|enabled|Enables the monitoring APIs|`boolean`|`false` +|metricsPath|The path from which to serve the Prometheus metrics|`string`|`/metrics` +|port|Listener port|`int`|`6000` +|publicURL|Externally available URL for the HTTP endpoint|`string`|`` +|readTimeout|HTTP server read timeout|[`time.Duration`](https://pkg.go.dev/time#Duration)|`15s` +|shutdownTimeout|HTTP server shutdown timeout|[`time.Duration`](https://pkg.go.dev/time#Duration)|`10s` +|writeTimeout|HTTP server write timeout|[`time.Duration`](https://pkg.go.dev/time#Duration)|`15s` + +## monitoring.auth + +|Key|Description|Type|Default Value| +|---|-----------|----|-------------| +|type|The auth plugin to use for server side authentication of requests|`string`|`` + +## monitoring.auth.basic + +|Key|Description|Type|Default Value| +|---|-----------|----|-------------| +|passwordfile|The path to a .htpasswd file to use for authenticating requests. Passwords should be hashed with bcrypt.|`string`|`` + +## monitoring.tls + +|Key|Description|Type|Default Value| +|---|-----------|----|-------------| +|ca|The TLS certificate authority in PEM format (this option is ignored if caFile is also set)|`string`|`` +|caFile|The path to the CA file for TLS on this API|`string`|`` +|cert|The TLS certificate in PEM format (this option is ignored if certFile is also set)|`string`|`` +|certFile|The path to the certificate file for TLS on this API|`string`|`` +|clientAuth|Enables or disables client auth for TLS on this API|`string`|`` +|enabled|Enables or disables TLS on this API|`boolean`|`false` +|insecureSkipHostVerify|When to true in unit test development environments to disable TLS verification. Use with extreme caution|`boolean`|`` +|key|The TLS certificate key in PEM format (this option is ignored if keyFile is also set)|`string`|`` +|keyFile|The path to the private key file for TLS on this API|`string`|`` +|requiredDNAttributes|A set of required subject DN attributes. Each entry is a regular expression, and the subject certificate must have a matching attribute of the specified type (CN, C, O, OU, ST, L, STREET, POSTALCODE, SERIALNUMBER are valid attributes)|`map[string]string`|`` + ## persistence |Key|Description|Type|Default Value| diff --git a/evmconnect/main.go b/evmconnect/main.go index 795f73f..d38434c 100644 --- a/evmconnect/main.go +++ b/evmconnect/main.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/go.mod b/go.mod index 3481ceb..6b5d67c 100644 --- a/go.mod +++ b/go.mod @@ -8,7 +8,7 @@ require ( github.com/hashicorp/golang-lru v1.0.2 github.com/hyperledger/firefly-common v1.4.11 github.com/hyperledger/firefly-signer v1.1.17 - github.com/hyperledger/firefly-transaction-manager v1.3.18 + github.com/hyperledger/firefly-transaction-manager v1.3.19 github.com/sirupsen/logrus v1.9.3 github.com/spf13/cobra v1.8.0 github.com/stretchr/testify v1.8.4 @@ -73,7 +73,7 @@ require ( github.com/prometheus/client_model v0.5.0 // indirect github.com/prometheus/common v0.45.0 // indirect github.com/prometheus/procfs v0.12.0 // indirect - github.com/rs/cors v1.11.0 // indirect + github.com/rs/cors v1.11.1 // indirect github.com/sagikazarmark/locafero v0.4.0 // indirect github.com/sagikazarmark/slog-shim v0.1.0 // indirect github.com/santhosh-tekuri/jsonschema/v5 v5.3.1 // indirect diff --git a/go.sum b/go.sum index d571a99..5a80415 100644 --- a/go.sum +++ b/go.sum @@ -104,8 +104,8 @@ github.com/hyperledger/firefly-common v1.4.11 h1:WKv2hQuNpS7yP51THxzpzrqU3jkln23 github.com/hyperledger/firefly-common v1.4.11/go.mod h1:E7w/RxNtVnX52WXLQW9f2xVAgZnW70voZeE9sZrx/q0= github.com/hyperledger/firefly-signer v1.1.17 h1:JV38nNeCS/K31kPDk5mwnoqw6SoulcYF+12JW8a3/Mw= github.com/hyperledger/firefly-signer v1.1.17/go.mod h1:HDaDdht94JypRTunRGrcPL5Pvxfh4yigjatTrie5JUI= -github.com/hyperledger/firefly-transaction-manager v1.3.18 h1:had6Mp9KZ1WwX2GuhJToSzwvjKaRy45c2K/DeqLLQ7k= -github.com/hyperledger/firefly-transaction-manager v1.3.18/go.mod h1:TLMmYp2QhzbC1jQEhvjYYlx3kByR1m9ALQ1CxUVTkiM= +github.com/hyperledger/firefly-transaction-manager v1.3.19 h1:AzRYulDpk+AzeVPFGqw8nLRMPNJcX32FP7VBdsTM+L0= +github.com/hyperledger/firefly-transaction-manager v1.3.19/go.mod h1:qZgj628oCJ+DP3CwS2y9pRN8zwJAJ8/U3ait/+fmQlg= github.com/imdario/mergo v0.3.11/go.mod h1:jmQim1M+e3UYxmgPu/WyfjB3N3VflVyUjjjwH0dnCYA= github.com/imdario/mergo v0.3.16 h1:wwQJbIsHYGMUyLSPrEq1CT16AhnhNJQ51+4fdHUnCl4= github.com/imdario/mergo v0.3.16/go.mod h1:WBLT9ZmE3lPoWsEzCh9LPo3TiwVN+ZKEjmz+hD27ysY= @@ -199,8 +199,8 @@ github.com/prometheus/procfs v0.12.0 h1:jluTpSng7V9hY0O2R9DzzJHYb2xULk9VTR1V1R/k github.com/prometheus/procfs v0.12.0/go.mod h1:pcuDEFsWDnvcgNzo4EEweacyhjeA9Zk3cnaOZAZEfOo= github.com/rogpeppe/go-internal v1.10.0 h1:TMyTOH3F/DB16zRVcYyreMH6GnZZrwQVAoYjRBZyWFQ= github.com/rogpeppe/go-internal v1.10.0/go.mod h1:UQnix2H7Ngw/k4C5ijL5+65zddjncjaFoBhdsK/akog= -github.com/rs/cors v1.11.0 h1:0B9GE/r9Bc2UxRMMtymBkHTenPkHDv0CW4Y98GBY+po= -github.com/rs/cors v1.11.0/go.mod h1:XyqrcTp5zjWr1wsJ8PIRZssZ8b/WMcMf71DJnit4EMU= +github.com/rs/cors v1.11.1 h1:eU3gRzXLRK57F5rKMGMZURNdIG4EoAmX8k94r9wXWHA= +github.com/rs/cors v1.11.1/go.mod h1:XyqrcTp5zjWr1wsJ8PIRZssZ8b/WMcMf71DJnit4EMU= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/sagikazarmark/locafero v0.4.0 h1:HApY1R9zGo4DBgr7dqsTH/JJxLTTsOt7u6keLGt6kNQ= github.com/sagikazarmark/locafero v0.4.0/go.mod h1:Pe1W6UlPYUk/+wc/6KFhbORCfqzgYEpgQ3O5fPuL3H4= diff --git a/internal/ethereum/blocklistener.go b/internal/ethereum/blocklistener.go index bf0b489..a1d0f04 100644 --- a/internal/ethereum/blocklistener.go +++ b/internal/ethereum/blocklistener.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/blocklistener_blockquery.go b/internal/ethereum/blocklistener_blockquery.go index e3e6666..3ab9c0b 100644 --- a/internal/ethereum/blocklistener_blockquery.go +++ b/internal/ethereum/blocklistener_blockquery.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/config.go b/internal/ethereum/config.go index fe40f49..f1d5314 100644 --- a/internal/ethereum/config.go +++ b/internal/ethereum/config.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/deploy_contract_prepare.go b/internal/ethereum/deploy_contract_prepare.go index bf4c2bc..9520d94 100644 --- a/internal/ethereum/deploy_contract_prepare.go +++ b/internal/ethereum/deploy_contract_prepare.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/error_mapping.go b/internal/ethereum/error_mapping.go index 293f86d..fe261ef 100644 --- a/internal/ethereum/error_mapping.go +++ b/internal/ethereum/error_mapping.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/estimate_gas.go b/internal/ethereum/estimate_gas.go index 098e16a..84243bd 100644 --- a/internal/ethereum/estimate_gas.go +++ b/internal/ethereum/estimate_gas.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/ethereum.go b/internal/ethereum/ethereum.go index 8736c28..d306e9f 100644 --- a/internal/ethereum/ethereum.go +++ b/internal/ethereum/ethereum.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/event_actions.go b/internal/ethereum/event_actions.go index 5f56190..882ba3d 100644 --- a/internal/ethereum/event_actions.go +++ b/internal/ethereum/event_actions.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/event_enricher.go b/internal/ethereum/event_enricher.go index 5c02558..9982fc0 100644 --- a/internal/ethereum/event_enricher.go +++ b/internal/ethereum/event_enricher.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inl.c. +// Copyright © 2025 Kaleido, Inl.c. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/event_listener.go b/internal/ethereum/event_listener.go index 0559762..b034258 100644 --- a/internal/ethereum/event_listener.go +++ b/internal/ethereum/event_listener.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inl.c. +// Copyright © 2025 Kaleido, Inl.c. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/event_stream.go b/internal/ethereum/event_stream.go index c841655..508eb12 100644 --- a/internal/ethereum/event_stream.go +++ b/internal/ethereum/event_stream.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/exec_query.go b/internal/ethereum/exec_query.go index fd91e75..d6a0014 100644 --- a/internal/ethereum/exec_query.go +++ b/internal/ethereum/exec_query.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/get_address_balance.go b/internal/ethereum/get_address_balance.go index d98b78c..cef3fc1 100644 --- a/internal/ethereum/get_address_balance.go +++ b/internal/ethereum/get_address_balance.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/get_block_info.go b/internal/ethereum/get_block_info.go index a1f7570..ae2dd00 100644 --- a/internal/ethereum/get_block_info.go +++ b/internal/ethereum/get_block_info.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/get_gas_price.go b/internal/ethereum/get_gas_price.go index b83899a..93a9fd1 100644 --- a/internal/ethereum/get_gas_price.go +++ b/internal/ethereum/get_gas_price.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/get_next_nonce.go b/internal/ethereum/get_next_nonce.go index 8a1fd7a..3dae1af 100644 --- a/internal/ethereum/get_next_nonce.go +++ b/internal/ethereum/get_next_nonce.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/get_receipt.go b/internal/ethereum/get_receipt.go index c04ec36..36c4c32 100644 --- a/internal/ethereum/get_receipt.go +++ b/internal/ethereum/get_receipt.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/new_block_listener.go b/internal/ethereum/new_block_listener.go index 8b01ee3..bc80dc3 100644 --- a/internal/ethereum/new_block_listener.go +++ b/internal/ethereum/new_block_listener.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/prepare_transaction.go b/internal/ethereum/prepare_transaction.go index 96fabcb..6789ce6 100644 --- a/internal/ethereum/prepare_transaction.go +++ b/internal/ethereum/prepare_transaction.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/retry_delay.go b/internal/ethereum/retry_delay.go index 7be48f1..c684adf 100644 --- a/internal/ethereum/retry_delay.go +++ b/internal/ethereum/retry_delay.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/send_transaction.go b/internal/ethereum/send_transaction.go index b15aea5..a9bc448 100644 --- a/internal/ethereum/send_transaction.go +++ b/internal/ethereum/send_transaction.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/ethereum/statuses.go b/internal/ethereum/statuses.go index d00ae6b..88a9ef2 100644 --- a/internal/ethereum/statuses.go +++ b/internal/ethereum/statuses.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/msgs/en_config_descriptions.go b/internal/msgs/en_config_descriptions.go index a5a0e6a..177addd 100644 --- a/internal/msgs/en_config_descriptions.go +++ b/internal/msgs/en_config_descriptions.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 // diff --git a/internal/msgs/en_error_messages.go b/internal/msgs/en_error_messages.go index 4f5d445..dd0d16e 100644 --- a/internal/msgs/en_error_messages.go +++ b/internal/msgs/en_error_messages.go @@ -1,4 +1,4 @@ -// Copyright © 2024 Kaleido, Inc. +// Copyright © 2025 Kaleido, Inc. // // SPDX-License-Identifier: Apache-2.0 //