Commit Graph

15078 Commits

Author SHA1 Message Date
Jack Grigg 0f9e4b9472 metrics: Use labels for pool statistics
It's very likely that you'll want to operate over common pool statistics
together.
2021-03-30 15:12:36 +13:00
Jack Grigg 78b83fd6e9 metrics: Enable gauges with fully-static labels 2021-03-30 15:12:36 +13:00
Jack Grigg 958ffeafd3 metrics: Move documentation into zcashd book 2021-03-30 15:12:36 +13:00
Jack Grigg c9e3d03320 rust: Pin hyper 0.14.2
hyper 0.14.3 added an unstable C API, but the changes to enable it
require us to configure cargo with a linker for cross-compilation.
We'll need to figure this out eventually, but for now let's just
pin hyper to a version that doesn't require it.
2021-03-30 15:12:35 +13:00
Jack Grigg d08cdbe5f7 metrics: Implement IP access control on Prometheus scrape endpoint 2021-03-30 15:12:08 +13:00
Jack Grigg 59da774f22 Mention in release notes that metrics names may still change 2021-03-30 15:12:08 +13:00
Jack Grigg 34d2edb619 Add -prometheusmetrics to release notes 2021-03-30 15:12:08 +13:00
Jack Grigg 1e5f9284c0 rust: Check for invalid UTF-8 in -prometheusmetrics argument 2021-03-30 15:12:08 +13:00
str4d dde7546091 Clean up comment
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2021-03-30 15:12:08 +13:00
str4d d0f468e1ce Add security warnings for -prometheusmetrics option
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2021-03-30 15:12:08 +13:00
Jack Grigg 523f969654 rust: Use consistent include guards in header files 2021-03-30 15:12:08 +13:00
Jack Grigg ab3196c1df Add more detailed metrics
- Sprout and Sapling pool metrics (commitments, values)
- Block verification time histogram (as a summary, not bucketed)
- Mempool stats (same as getmempoolinfo returns)
- Inbound and outbound bytes labelled by command
- Added command labels to message counters
2021-03-30 15:12:08 +13:00
Jack Grigg 1c2c8fed2e metrics: Expose binary metadata 2021-03-30 15:12:08 +13:00
Jack Grigg 92e75de46f metrics: Add support for labels
Given that label values may be dynamic, any metrics callsite with labels
can't be stored statically. Instead, we contruct a fresh metrics Key each
time we hit a metric with labels (if a metrics recorder is installed).
2021-03-30 15:12:08 +13:00
Jack Grigg 7a96af8260 rust: Move helper macros into rust/helpers.h 2021-03-30 15:12:08 +13:00
Jack Grigg 37b42d8a41 tracing: Merge TracingSpanFields macro into TracingSpan
Leverages the VA_OPT macro library, which is a polyfill for __VA_OPT__
on non-C++20 platforms, to enable TracingSpan to support optional fields.

Source: https://github.com/willwray/VA_OPT
License: Boost Software License, Version 1.0
2021-03-30 15:12:08 +13:00
Jack Grigg e5a5bc5b83 metrics: Add documentation and example configs 2021-03-30 15:12:08 +13:00
Jack Grigg 90f4d48307 Add some metrics that match existing zebrad metrics
The metric names match those used in zebrad, so the same visualisers can
be used for both nodes.

See https://github.com/ZcashFoundation/zebra/issues/1381 for discussion
about potential naming changes.
2021-03-30 15:12:08 +13:00
Jack Grigg a79ffa3b50 rust: Add a Prometheus metrics exporter
The -prometheusmetrics=host_name:port config option enables the metrics
exporter.
2021-03-30 15:12:07 +13:00
Jack Grigg 8482ed6356 rust: Implement FFI interface to metrics crate 2021-03-30 15:11:17 +13:00
Homu ccb26821df Auto merge of #5036 - str4d:rust-bump, r=str4d
Rust 1.51.0 and zcash_* 0.5.0
2021-03-28 20:01:03 +00:00
Jack Grigg f7c7e0ee13 qa: Update BerkeleyDB downloads page URL 2021-03-27 11:47:34 +13:00
Jack Grigg 2e12078cfc depends: Update Rust to 1.51.0 2021-03-27 11:47:34 +13:00
Jack Grigg 8393b3da88 rust: zcash_{primitives, proofs} 0.5.0 2021-03-27 11:47:25 +13:00
Jack Grigg 5ffcb198a7 cargo update 2021-03-27 10:42:04 +13:00
Kris Nuttycombe 766abede57
Document UPGRADE_ZFUTURE
Co-authored-by: str4d <thestr4d@gmail.com>
2021-03-24 08:17:32 -06:00
Kris Nuttycombe dd914fcdcf Document FeatureSet type. 2021-03-23 19:42:45 -06:00
Kris Nuttycombe c759e6a9f3 Add feature flagging tests. 2021-03-23 19:38:30 -06:00
Kris Nuttycombe d02a863c28
Apply suggestions from code review
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
2021-03-15 14:32:29 -06:00
Kris Nuttycombe 05ecc47197 Use SPROUT_MAX_CURRENT_VERSION 2021-03-11 15:22:50 -07:00
Kris Nuttycombe f4661c151f Add future version group & version checks 2021-03-11 15:13:26 -07:00
Kris Nuttycombe 04f9f23255 Move sapling version group checks back inside of saplingActive check. 2021-03-11 14:58:15 -07:00
Kris Nuttycombe e49fa53ea9 Add TxVersionInfo for feature/future-base transaction construction. 2021-03-10 08:55:21 -07:00
Kris Nuttycombe a3d86d93b8 Relocate contextual Sapling version checks
These checks will have to move for the inclusion of Orchard
under ZFUTURE. For the purpose of eventual removal of Sapling
it might make more sense for these checks to be under a Sapling
feature flag, but that larger set of changes should be deferred.
2021-03-10 08:55:21 -07:00
Kris Nuttycombe 2fc8963e63 Add feature flagging infrastructure to consensus parameters. 2021-03-10 08:55:19 -07:00
Homu 1cf4a10456 Auto merge of #5029 - steven-ecc:nu5-activation-logic, r=steven-ecc
Adding base NU5 declarations and logic

Add NU5 base definitions and boilerplate logic.

Closes [#5025](https://github.com/zcash/zcash/issues/5025).
2021-03-10 02:08:43 +00:00
Steven Smith 48d5142dc1 Adding base NU5 declarations and logic 2021-03-06 17:35:54 -08:00
Homu 2aa9fbbdfe Auto merge of #4997 - str4d:2074-net-setInventoryKnown, r=str4d
Replace setInventoryKnown with a rolling bloom filter

Cherry-picked from bitcoin/bitcoin#7133.
- Excluding for last commit, which needs bitcoin/bitcoin#7129.

Part of #2074.
2021-03-05 12:17:16 +00:00
Homu 39a860c12b Auto merge of #5015 - daira:fix-nix, r=therealyingtong
Fix build regression by adding #include <atomic>

This fixes #5014, a build regression on Nix introduced in e286250ce4 .

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-04 16:57:32 +00:00
Daira Hopwood a0ac27ec6e Fix regression introduced in e286250ce4 by adding #include <atomic>. fixes #5014
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2021-03-01 17:00:13 +00:00
Homu 0aa6d1ef3d Auto merge of #5007 - nuttycom:trivial/gitignore_otmp, r=str4d
Ignore temporary build artifacts.
2021-02-25 23:01:44 +00:00
Homu 834343327b Auto merge of #5011 - str4d:ci-fix-book, r=str4d
CI: Correctly build zcashd book
2021-02-25 22:06:22 +00:00
Jack Grigg 6962a9a3d3 CI: Correctly build zcashd book 2021-02-25 15:00:33 +00:00
Homu a675d9089d Auto merge of #5010 - str4d:release-v4.3.0, r=str4d
Release v4.3.0
2021-02-24 21:59:37 +00:00
Jack Grigg e3282abf75 doc: Minor fixes to v4.3.0 release notes 2021-02-24 21:58:32 +00:00
Jack Grigg 8b91e3bf21 make-release.py: Updated release notes and changelog for 4.3.0. 2021-02-24 20:17:10 +00:00
Jack Grigg f09bef8634 make-release.py: Updated manpages for 4.3.0. 2021-02-24 20:17:10 +00:00
Jack Grigg 205b40da9a make-release.py: Versioning changes for 4.3.0. 2021-02-24 20:12:54 +00:00
Kris Nuttycombe edc34f0464 Ignore temporary build artifacts. 2021-02-23 18:22:03 -07:00
Homu e68e43a0fe Auto merge of #5001 - mdr0id:add_zstd_apt_package, r=str4d
add zstd package to support Windows cross compile

Once the v4.3.0 release is stable, we will need to go rebuild/deploy this builder with a couple other updates so that windows can gracefully cross compile again.
2021-02-23 01:47:34 +00:00