Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add telemetry backend support for dispute tracking #178

Open
Tracked by #283
sandreim opened this issue Dec 13, 2022 · 0 comments
Open
Tracked by #283

Add telemetry backend support for dispute tracking #178

sandreim opened this issue Dec 13, 2022 · 0 comments

Comments

@sandreim
Copy link
Collaborator

sandreim commented Dec 13, 2022

A nice enhancement to the dispute tracker is to be able to get additional information about dispute initiators, like hw information and OS. This would save a lot of time when trying to figure out who initiated disputes and why.

pub struct SysInfo {
	/// The exact CPU model.
	pub cpu: Option<String>,
	/// The total amount of memory, in bytes.
	pub memory: Option<u64>,
	/// The number of physical CPU cores.
	pub core_count: Option<u32>,
	/// The Linux kernel version.
	pub linux_kernel: Option<String>,
	/// The exact Linux distribution used.
	pub linux_distro: Option<String>,
	/// Whether the node's running under a virtual machine.
	pub is_virtual_machine: Option<bool>,
}

We just need to:

  • add option to specify a telemetry server
  • when configured, connect and search for validators network_id which should by address we have from chain
  • fetch the additional information that is sent when the connection to telemetry backend is made, see below
pub struct ConnectionMessage {
	/// Node's name.
	pub name: String,
	/// Node's implementation.
	pub implementation: String,
	/// Node's version.
	pub version: String,
	/// Node's configuration.
	pub config: String,
	/// Node's chain.
	pub chain: String,
	/// Node's genesis hash.
	pub genesis_hash: String,
	/// Node is an authority.
	pub authority: bool,
	/// Node's startup time.
	pub startup_time: String,
	/// Node's network ID.
	pub network_id: String,

	/// Node's OS.
	pub target_os: String,

	/// Node's ISA.
	pub target_arch: String,

	/// Node's target platform ABI or libc.
	pub target_env: String,

	/// Node's software and hardware information.
	pub sysinfo: Option<SysInfo>,
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Backlog
Status: To do
Development

No branches or pull requests

2 participants