This PR refactors the metrics measuring and Prometheus exposing entity in sc-service into its own submodule and extends the parameters it exposes by:
- system load average (over one, five and 15min)
- the TCP connection state of the process (lsof), refs #5304
- number of tokio threads
- number of known forks
- counter for items in each unbounded queue (with internal unbounded channels)
- number of file descriptors opened by this process (*nix only at this point)
- number of system threads (*nix only at this point)
refs #4679
Co-authored-by: Max Inden <mail@max-inden.de>
Co-authored-by: Ashley <ashley.ruglys@gmail.com>
* Simple Payouts
* explicit test for out of order claiming
* Add `payout_all` benchmark
* Fix merge
* add docs
* change event to controller
* Fix timestamp test warnings
* Revert "change event to controller"
This reverts commit 5d4a97832d47fe1273602d5410774d5421940c4e.
* Update Reward event doc
* Add "non-production" test
* add unlock chunk to test
* fix merge
* End payout early if no reward points
* payout_validator -> payout_stakers
* bring back payout nominator/validator, but limit their use to before migration era
* Add test for before migration
* New payout works for the era that we migrate
* Fix logic, check that migration era works
* Migrate Era tests (copypasta)
* Move comment
* Add mock back to external functions
* Fixes based on review from gui
* Update Cargo.lock
* Update Cargo.lock
* small docs update
Co-authored-by: joepetrowski <joe@parity.io>
* Split the Roles bitfield in three
* Forgot to include some changes
* Fix cli test
* More test fixes
* Oh God, merging master broke other tests
* Didn't run the doctests
* Address review
* I'm trying to fix the build blindly because it's taking a good hour to compile on my machine
* Address some review
* Also update the peerset's API to make sense
* Fix peerset tests
* Fix browser node
* client: distinguish between local and network authority
Co-authored-by: André Silva <andre.beat@gmail.com>
* Make Dispatchable return the actual weight consumed
Add PostInfo associated type to Dispatchable and have frame implement
Dispatchable { type PostInfo = PostDispatchInfo } where PostDispatchInfo
contains the actual weight consumed.
* Fix whitespace issues in docs
* Run benchmarks on block 1
* Put example benchmarks behind feature flag
* add feature to cargo.toml
* typo
* Add `frame_system` trait bound
* Update instance benchmarks too
This pr ensures that we don't panic because of a deadline that is
already reached in basic authorship. This is mainly useful for debug
builds, as release builds normally don't have debug assertions enabled.
* Initial draft of the logic
* Build and tests
* Make work with new initialize infratructure.
* Update frame/scheduler/src/lib.rs
Co-Authored-By: Marcio Diaz <marcio.diaz@gmail.com>
* Update frame/scheduler/src/lib.rs
Co-Authored-By: Marcio Diaz <marcio.diaz@gmail.com>
* Update frame/scheduler/src/lib.rs
Co-Authored-By: Marcio Diaz <marcio.diaz@gmail.com>
* Update frame/scheduler/src/lib.rs
Co-Authored-By: Marcio Diaz <marcio.diaz@gmail.com>
* Fix test
* Update frame/scheduler/src/lib.rs
Co-Authored-By: Marcio Diaz <marcio.diaz@gmail.com>
* Rejig interface to make it more useful for democracy.
* Try to get democraxy module to make use of scheduler.
* Make democracy use scheduler.
* Use actual max weight for enactent
* Remove TODO
* Fix runtime build
* Minor cleanup
* Fix scheduler.
* Fix benchmarks
* Fix
* Fix
* Fix
* More bench fixes
* Fix
* Fix.
* Add more bench constants.
* Fix cancel_queued bench.
* Fix test comment.
* Update frame/scheduler/src/lib.rs
Co-Authored-By: Marcio Diaz <marcio.diaz@gmail.com>
Co-authored-by: Marcio Diaz <marcio.diaz@gmail.com>
* client/finality-grandpa: Instrument until-imported queue
The `UntilImported` queue takes as input finality grandpa messages that
depend on blocks that are not yet imported and holds them back until
those blocks are imported.
This commit adds a basic metric, the amount of messages waiting in the
queue, to the module. For now this metric is only available for the
global `UntilImported` queue awaiting blocks for commit and catch-up
messages.
* client/finality-grandpa/src/until_imported: Update metric help text
Co-Authored-By: Ashley <ashley.ruglys@gmail.com>
Co-authored-by: Ashley <ashley.ruglys@gmail.com>
* Batch benchmarks together with `*` notation.
* Fix short structopt conflict
* Return error if `batches` is empty
* Move fast benchmarks macro into `frame_benchmarking` (#5445)
* Move macro into `frame_benchmarking`
* Update docs
* Extra line
* Return error if `batches` is empty
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com>
* Implements mocking of runtime apis
This pr adds support for easily mock runtime api implementations for
tests by using the `mock_impl_runtime_apis!` macro. The syntax is
similar to `impl_runtime_apis!`. The mocked implementation automatically
implements `ApiExt`, `ApiErrorExt` and `Core` as these are required by
the runtime api traits, but not required in tests or only a subset of them.
* Fix warnings
* Update primitives/api/proc-macro/src/utils.rs
Co-Authored-By: Nikolay Volf <nikvolf@gmail.com>
* Review feedback
Co-authored-by: Nikolay Volf <nikvolf@gmail.com>
* Show network id/version in subkey
- show network id/version when creating
- show network id/version when inspecting
* Update bin/utils/subkey/src/main.rs
use `unwrap_or_default` for more clean syntax
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com>
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
The library `sysinfo` exposes process memory as kibibytes and not bytes,
thus the value needs to be multiplied by 1024 to comply with the metric
name and the Prometheus base units [1].
[1] https://prometheus.io/docs/practices/naming/#base-units