打造以太坊数据监控利器:InfluxDB与Grafana构建Geth可视化分析平台

前言

以太坊客户端收集大量数据,这些数据可以按时间顺序数据库的形式读取。为了简化监控,这些数据可以输入到数据可视化软件中。在此页面上,将配置 Geth 客户端以将数据推送到 InfluxDB 数据库,并使用 Grafana 来可视化数据。

一、下载安装InfluxDB

官网:https://www.influxdata.com/downloads/

选择与自己系统适配的进行下载,下载完成之后,将这些文件进行解压,然后安装

在这里插入图片描述

Window:

打开window的powershell输入

wget https://download.influxdata.com/influxdb/releases/influxdb2-2.7.10-windows.zip -UseBasicParsing -OutFile influxdb2-2.7.10-windows.zip
Expand-Archive .\influxdb2-2.7.10-windows.zip -DestinationPath 'C:\Program Files\InfluxData\influxdb\'

二、下载安装Grafana

官网:https://grafana.com/grafana/download?platfrom=windows

选择与自己系统适配的进行下载,下载完成之后,将这些文件进行解压,然后安装

在这里插入图片描述

三、启动并配置InfluxDB

在influxDB所在文件夹打开CMD窗口,并运行 influxd.exe

在这里插入图片描述

启动成功之后, 默认情况下,可以通过 localhost:8086 访问它,出现以下页面代表启动成功

在这里插入图片描述

在使用 influx 客户端前,你必须创建具有管理员权限的新用户。 该用户将进行高级管理,创建数据库和用户。

在创建的时候我们会创建的是管理员的账号和密码,以及组织和存储桶

我设置的组织是aaa

我设置的存储桶是bbb

创建完毕后会给你一个token,记得保存下来然后进入以下页面

在这里插入图片描述

在这里插入图片描述

注意:可以自行下载它的命令行工具,然后去创建更多的用户和存储桶,目前我们只使用超级管理员这个用户来完成

四、启动并配置Geth

设置好InfluxDB数据库后,我们需要在 Geth 中启用指标收集。 留意 geth - help 中的 METRICS AND STATS OPTIONS。 此处可以找到多个选项,在此例中,我们希望 Geth 将数据推送到 InfluxDB。 基本设置指定了端点,可以通过它访问 InfluxDB 并进行数据库身份验证。

输入以下命令启动geth并连接到influxDB,把数据传递过去

将geth命令当中的Token换成自己的token,接着替换database、bucket、organization

geth --syncmode full --datadir . --dev --dev.period 7 --networkid  1337   --nodiscover   --ws.origins '*' --ws  --ws.port "8546" --http  --http.corsdomain '*' --nat "any" --http --http.api web3,eth,net  --allow-insecure-unlock --unlock 0 --password ./password.txt  --metrics --metrics.influxdbv2 --metrics.influxdb.endpoint "http://0.0.0.0:8086"   --metrics.influxdb.token "你设置/收到的token"  --metrics.influxdb.bucket "你设置的存储桶名字" --metrics.influxdb.database "你设置的存储桶名字" --metrics.influxdb.organization "你设置的组织名字"

在这里插入图片描述

检查InlfuxDB是否拿到了数据

在这里插入图片描述

五、启动并配置Grafana

1.启动并配置Grafana

现在grafana目录下的conf目录复制一个sample.ini文件,然后粘贴到当前目录下,并改名为custom.ini,然后打开custom.ini文件,根据关键字http_port找到端口设置, 将端口改为8080,并删除前面的分号;(ini文件中分号;是注释字符,删除可以取消注释)。

这样做的目的是自定义配置文件,因为默认端口号是3000,但是在Windows中这个端口需要额外权限,所以最好改成其他端口号,这里修改为8080

在这里插入图片描述

在这里插入图片描述

在Geafana的bin目录下启动cmd命令提示符,执行下面命令启动:

grafana.exe server

在这里插入图片描述

开启之后,在本地浏览器访问:localhost:8080

默认用户名和密码都是admin

在这里插入图片描述

2.连接InfluxDB

在主界面,创建一个新的数据源,选择influxDB

在这里插入图片描述

在这里插入图片描述

接下来进行配置

①选择的是InfluxQL的连接方式

②添加请求头

  • Header: Authorization
  • Value: Token 自己的token

注意:value应该填:Token+空格+一大串的TOKEN字符串

在这里插入图片描述

然后配置以下内容

Database:你的存储桶名

User:InfluxDB的用户名

Password:InfluxDB的用户密码

在这里插入图片描述

接到自己所需要的数据库,点击Save & test,弹出下图所示的绿框,就说明连接正常

在这里插入图片描述

3.导入可视化模板

接下来就需要我们导入可视化模板

在这里插入图片描述

在这里插入图片描述

模板选择地址:https://grafana.com/grafana/dashboards/

这里使用13877

在这里插入图片描述

然后给我们刚刚设置的数据库使用模板

在这里插入图片描述

点击import,就可以看到数据可视化了

在这里插入图片描述

到这里就大功告成了

总结

本文详细介绍了如何使用InfluxDB和Grafana构建Geth数据可视化分析平台。通过以下五个步骤,我们成功地将Geth客户端的数据推送至InfluxDB数据库,并通过Grafana实现了数据可视化:

  1. 下载并安装InfluxDB和Grafana;
  2. 启动并配置InfluxDB,创建管理员用户及数据库;
  3. 启动并配置Geth,使其将数据推送至InfluxDB;
  4. 启动并配置Grafana,连接InfluxDB数据库;
  5. 导入可视化模板,实现Geth数据的实时监控与分析。

通过本教程,读者可以轻松搭建一套完善的以太坊数据监控与分析系统,为区块链应用的开发与运维提供有力支持。同时,掌握了InfluxDB和Grafana这两款强大的工具,也为其他项目的数据可视化与分析奠定了基础。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/149131.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

惊!国产便宜猫罐头也有精品!鲜朗、希喂、顽皮测评

好多进口猫罐头二十多一罐,家里两个超能吃的十斤四岁布偶,每月至少得买100多罐,我直呼“钱包告急”,难以承担。只好把目光投向国内的主食罐。这一年里,我试了挺多国产品牌,一开始看着不到十元的价格&#x…

力扣周赛 —— 416

前言 只做出了第一道,第二第三道都超时。 痛,太痛了。 题目 Q1.举报垃圾信息 给你一个字符串数组 message 和一个字符串数组 bannedWords。 如果数组中 至少 存在两个单词与 bannedWords 中的任一单词 完全相同,则该数组被视为 垃圾信息。…

深入探秘:Linux内存管理与泄漏检测

目录 1. 朋友,了解一下Linux的内存工作原理吧! 1.1. 这张图展示的是一个Linux进程的虚拟内存结构 2. 内存分配与回收:让你的程序跑得更稳健 2.1. 内存分配与内存泄漏 3. 内存泄漏检测代码分析 3.1. 预处理宏替换方法 3.2. 动态链接库挂…

2024华为杯E题成品文章已出!

E题高速公路应急车道紧急启用模型 点击链接加入群聊【2024华为杯数学建模助攻资料】:http://qm.qq.com/cgi-bin/qm/qr?_wv1027&kxtS4vwn3gcv8oCYYyrqd0BvFc7tNfhV7&authKeyedQFZne%2BzvEfLEVg2v8FOm%2BWNg1V%2Fiv3H4tcE6X%2FW6lCmkhaSaZV4PwQ%2FOVPDtF%2B&…

kismet和war driving具体准备(仅供无线安全学习)

war driving准备 一台笔记本 一个最好是双频的网卡,单频搜集信号少 我自己买的是http://e.tb.cn/h.grI4EmkDLOqQXHG?tkKZ5g3RVeH6f 如果经济条件允许可以去买大功率天线(我买的车载的 大概40db这样子 范围广) http://e.tb.cn/h.grCM0CQ6L…

Python Appium自动化操作抖音

1、功能介绍 使用Python和Appium给手机抖音上的同城模块自动评论,主要是通过模拟用户在抖音同城模块的操作,实现自动发送评论的功能。具体步骤如下: - 安装并配置好Python环境; - 安装Appium库,用于自动化操作手机应…

【CSS in Depth 2 精译_038】6.2 CSS 定位技术之:绝对定位

当前内容所在位置(可进入专栏查看其他译好的章节内容) 第一章 层叠、优先级与继承(已完结)第二章 相对单位(已完结)第三章 文档流与盒模型(已完结)第四章 Flexbox 布局(已…

大模型深入行业,正从“星星之火”走向“燎原之势”

2024年,当越来越多的企业从赶大模型的潮流与炫大模型的参数规模开始转移到行业落地时,华为携生态伙伴用大模型深耕行业的成果俨然遍地开花。 在9月19日华为全联接大会2024大会上同期举办的华为云AI用户峰会上,华为云为28个创新项目颁发了“A…

应用密码学第一次作业(9.23)

一、Please briefly describe the objectives of information and network security,such as confidentiality, integrity, availability , authenticity , and accountability The objectives of information and network security include: Confidentiality: Protecting se…

快手旗下——Kolors模型部署与使用指南

以下是按照要求重写后的 Kolors 模型部署与使用指南,文章风格偏技术性,但保持简洁和易懂的特点: Kolors 模型部署与使用指南 一、Kolors 简介 Kolors 是由快手 Kolors 团队开发的文本到图像生成模型,基于大规模的潜在扩散技术。…

vue-animate-onscroll动画库(可来回触发动画)

效果展示 ①触发一次动画 触发一次 ②触发多次动画 触发多次 1.什么是vue-animate-onscroll 它是一个 Vue 插件,用于在滚动时触发动画效果。它可以帮助开发者在用户滚动页面时,逐渐展示元素,增强用户体验。基本用法是通过在元素上添加特定的指…

Soul APP创始人张璐团队探讨新世代婚恋观:基于兴趣爱好的“轻相亲”正逐渐流行

近年来,随着社会经济的快速发展和文化观念的不断演变,婚恋观念正在经历显著变化。为深入了解当代年轻人对婚恋的态度与趋势,Soul APP创始人张璐团队与上海大学社会学青年研究团队合作,联合发布了《2024年青年婚恋观念及趋势调查报告》(以下简称“报告”)。该报告基于Soul APP用…

qml PathView入门

PathView是一个用于在用户界面中沿着定义的路径显示和滚动项目的视图组件。它提供了丰富的定制选项,允许开发者创建复杂的动画效果和自定义的滚动行为,特别适用于需要展示非线性排列项目的场景,如图片轮播、自定义滚动菜单等。 一、主要属性 …

[教程]如何在iPhone上启用中国移动/联通/电信RCS消息

目前 苹果已经在 iOS 18 中带来 RCS 富媒体消息的支持,该消息基于网络传递,用户可以通过 RCS 免费将消息发送到其他 iPhone 或 Android 设备。在苹果面向测试版用户推出的 iOS 18.1 Beta 版中,中国网络运营商包括中国移动、中国联通、中国电信…

JavaSE - 面向对象编程05

01 正则表达式 【1】概念:正则表达式是由一些特定字符组成的,代表的是一个规则。 【2】可以用来做什么? ① 用于校验数据格式的合法性 ② 用于在文本中爬取满足要求的内容 ③ 用于String类的replace方法,split方法的替换和分割 …

【学习笔记】Linux系统基础知识3 —— cd命令详解

一、前期准备 1.已经正确安装并成功进入Linux系统 说明:本实验采用的 Redhat 系统(因系统不一致,可能部分显示存在差异) 二、学习内容 提示:学习Linux系统基础命令 cd 命令详解 1、cd命令 1. 功能说明 cd 命令用…

Simple Calculator(算法初阶,代码基础,“纯”手撕)

简单计算器:仅适用无括号加减乘除,算法初阶,代码基础,不调库或模块“纯”手撕。 (笔记模板由python脚本于2024年09月22日 12:08:02创建,本篇笔记适合喜欢用python解决实际问题的coder翻阅) 【学习的细节是欢悦的历程】…

Qt中多语言的操作(以QtCreator为例)

1、首先,我们在代码中与文本相关的且需要支持多语言的地方,用tr来包含多语言key(多语言key是我们自己定义的),如下 //举例 QPushButton* btnnew QPushButton(this); btn->move(20,20); btn->resize(100,50); //…

在 deepin 上除了 Steam,还能怎么玩游戏?

查看原文 前段时间,很多朋友在 deepin 23 上实现了《黑神话:悟空》的通关,那么除了通过 Steam 玩 Windows 游戏之外,还有其他可以使用的游戏平台吗? 回答,当然是可以哒! 游戏平台介绍 今天介…

RHCSA认证-Linux(RHel9)-Linux入门

文章目录 概要一、创建、查看和编辑⽂本1.1 输出重定向1.2 vim编辑器1.3 shell 变量1.5 获取帮助 二、管理本地用户和组2.1 描述用户2.2 切换用户和赋权2.3 用户管理2.4 用户组管理2.5 密码策略 三、控制文件访问3.1 列出文件和文件权限3.2 更改文件权限和拥有者3.3 控制默认权…