qosgroup / qmoon Goto Github PK
View Code? Open in Web Editor NEWthe moon of QOS
License: Apache License 2.0
the moon of QOS
License: Apache License 2.0
Qmoon will be aligned with new QOS explorer for main net launch.
The API and database design will start at first with coordinations with Front End counterpart.
Hi, ~
Please provide a QR code parsing matching rule for payment generated by different wallets,easyzone use this rule to parse data.
Thank u
很容易切回aoe~
Cosmos用地址查询交易记录分页时,丢失最近的交易记录
The Tx table is not updated any more since last commit 97cc3fd 14
investigation is ongoing, the upgrading should take place first at dev environment then migrated to production
new monitor KPI with this metric for Txs updating will also taken into consideration with alignment of Feiping.
https://cosmos.bigdipper.live/proposals/14
Corresponding restructuring should be taken under this basis, it should be completed before 15th Sep.
在输入了规定的开始和结束高度后,点击查询返回的依然是全部list数据
比如启动qmoon的时候,增加一个参数 --with-explorer=/tmp/explorer
A new table should be added for proposal
storage, and it should follow current architecture of the Qmoon as an extension to API exposed for external call.
Per talk with @xuyz the Qmoon will restructured with following adjustments:
It is still under restructuring, and I believe we will see a lot of changes brought by it and benefit from this change.
Node infos i.e. IPs for RPC connection should be returned to FE empowered by litewallet SDK.
SDK uses its Round Robin scheme to select one randomly and establish RPC connection.
The 1st part should be implemented here in Qmoon project and the latter one is on litewallet.
tx结果,需要单独查询状态
通过tendermint api /tx?hash=_&prove=_
field commission is missing in the table validator
, this field should be added due to latest QOS explorer requirement.
交易内容种类较多,qmoon作为基础引擎,提供插件开发机制,增加交易的解析,查询
启动服务
./qmoon --db.addr=127.0.0.1:5432 server
启动失败,打印错误信息
panic: 读取版本失败pq: relation "qmoon_status" does not exist
goroutine 1 [running]:
github.com/QOSGroup/qmoon/cmd/commands.server(0x12c86a0, 0xc00018de40, 0x0, 0x1, 0x0, 0x0)
/Users/xutao/go/src/github.com/QOSGroup/qmoon/cmd/commands/server.go:38 +0x2c9
github.com/spf13/cobra.(*Command).execute(0x12c86a0, 0xc00018de20, 0x1, 0x1, 0x12c86a0, 0xc00018de20)
/Users/xutao/go/pkg/mod/github.com/spf13/[email protected]/command.go:762 +0x473
github.com/spf13/cobra.(*Command).ExecuteC(0x12c8440, 0x8, 0x4, 0x12c81e0)
/Users/xutao/go/pkg/mod/github.com/spf13/[email protected]/command.go:852 +0x2fd
github.com/spf13/cobra.(*Command).Execute(0x12c8440, 0xc0001f5f60, 0x5)
/Users/xutao/go/pkg/mod/github.com/spf13/[email protected]/command.go:800 +0x2b
main.main()
/Users/xutao/go/src/github.com/QOSGroup/qmoon/cmd/main.go:17 +0xb2
When multiple tnxs occurred in QOS chain, it seems the tx parsing not so correctly.
Here is the query info from qoscli
F.Y.I.
[vagrant@vagrant-192-168-1-223 qos]$ ./qoscli query tx BF16C5E9CD3BF295F7FE03F9D2A2C3FD5540620F205B7DA015086690A9781FA3 --node "tcp://192.168.1.221:26657" --indent
{
"height": "122762",
"txhash": "BF16C5E9CD3BF295F7FE03F9D2A2C3FD5540620F205B7DA015086690A9781FA3",
"gas_wanted": "9223372036854775807",
"gas_used": "20000020700",
"events": [
{
"type": "invariant_check",
"attributes": [
{
"key": "sender",
"value": "address1nzv9awha9606jp5rpqe2kujckddpyauggu56ru"
},
{
"key": "height",
"value": ""
}
]
}
],
"tx": {
"type": "qbase/txs/stdtx",
"value": {
"itx": [
{
"type": "transfer/txs/TxTransfer",
"value": {
"senders": [
{
"addr": "address1nzv9awha9606jp5rpqe2kujckddpyauggu56ru",
"qos": "100000",
"qscs": null
}
],
"receivers": [
{
"addr": "address1lq75gfdz6rrzf5628s85m0q60n0wsrdnjue3vp",
"qos": "100000",
"qscs": null
}
]
}
},
{
"type": "transfer/txs/TxInvariantCheck",
"value": {
"Sender": "address1nzv9awha9606jp5rpqe2kujckddpyauggu56ru"
}
}
],
"sigature": [
{
"pubkey": {
"type": "tendermint/PubKeyEd25519",
"value": "TWqvYXJI3HbrAXWqyy0zd2LQaIozD6av/dJmFAwWfUg="
},
"signature": "SvrRmJYZyjmh6eySxRz1paKo6itdmVxsLs/05hf8sCHwktmLps7YfZy+x3W18vhtl7DvelWQUKVMMGj/R+wQDA==",
"nonce": "13"
}
],
"chainid": "aquarius-1001",
"maxgas": "9223372036854775807"
}
},
"timestamp": "2019-09-11T10:09:16Z"
}
While in Qmoon explorer, there is some fault in the tx content:
通过命令行工具添加两个node
./qmoon node create --nodeName=qos --nodeUrl=http://192.168.1.224:26657/
./qmoon node create --nodeName=qstars --nodeUrl=http://192.168.1.223:26657/
查询node列表时,没有router
{
"jsonrpc": "2.0",
"id": "",
"result": {
"nodes": [
{
"name": "qos",
"baseUrl": "http://127.0.0.1:9527/node/qos",
"routers": null
},
{
"name": "qstars",
"baseUrl": "http://127.0.0.1:9527/node/qstars",
"routers": null
}
]
}
}
It is crucial for Qmoon with explorer functionality to support the request from QOS chain.
It is weird that the tx
could not be shown correctly in with page.
{"jsonrpc":"2.0","id":"","result":[{"chain_id":"","hash":"C9FAF5D39FBE6B81084B8CC518FB41E9EB1E75AF7B58103BE36E919205C996A9","height":"151422","index":"0","tx_type":"send","tx_type_cn":"转出","gas_wanted":"200000","gas_used":"40063","fee":"1000stake","tx_status":"成功","status":"1","data":[{"type":"send","data":{"from_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","to_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","amount":[{"denom":"stake","amount":"1000000"}]}}],"time":"2019-09-09 11:01:51.1179791+08","log":"[{\"msg_index\":0,\"success\":true,\"log\":\"\"}]","created_at":"0001-01-01 00:00:00.1279790+08","tx_detail":{"send":[{"from_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","to_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","amount":[{"denom":"stake","amount":"1000000"}]}]}},{"chain_id":"","hash":"D6012A7D46E73FEEE53021F7D35778B08151126AF92E03CF63C885A55CD6D521","height":"110159","index":"0","tx_type":"begin_unbonding","tx_type_cn":"终止委托","gas_wanted":"200000","gas_used":"121507","fee":"1000stake","tx_status":"成功","status":"1","data":[{"type":"begin_unbonding","data":{"delegator_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","validator_address":"cosmosvaloper1r6zq2r3d2cddz59p5cat2cazeavh8uq99wxw8l","amount":{"denom":"stake","amount":"1000000"}}}],"time":"2019-09-06 18:08:14.679798+08","log":"[{\"msg_index\":0,\"success\":true,\"log\":\"\"}]","created_at":"0001-01-01 00:00:00.1279790+08","tx_detail":{"begin_unbonding":[{"delegator_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","validator_address":"cosmosvaloper1r6zq2r3d2cddz59p5cat2cazeavh8uq99wxw8l","amount":{"denom":"stake","amount":"1000000"}}]}},{"chain_id":"","hash":"1ADB55BA1029F6E4B4DC5FD3BAF1A20458BCE8D43008CAF4402BD7FBD90C7A44","height":"110156","index":"0","tx_type":"withdraw_delegator_reward","tx_type_cn":"取回分红","gas_wanted":"200000","gas_used":"80770","fee":"1000stake","tx_status":"成功","status":"1","data":[{"type":"withdraw_delegator_reward","data":{"delegator_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","validator_address":"cosmosvaloper1r6zq2r3d2cddz59p5cat2cazeavh8uq99wxw8l"}}],"time":"2019-09-06 18:07:57.679797+08","log":"[{\"msg_index\":0,\"success\":true,\"log\":\"\"}]","created_at":"0001-01-01 00:00:00.1279790+08","tx_detail":{"withdraw_delegator_reward":[{"delegator_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","validator_address":"cosmosvaloper1r6zq2r3d2cddz59p5cat2cazeavh8uq99wxw8l"}]}},{"chain_id":"","hash":"3682205CFA96616235284E12C3785013A350CF5ADB7FDD28F355C03C1269283B","height":"110067","index":"0","tx_type":"send","tx_type_cn":"转出","gas_wanted":"200000","gas_used":"40063","fee":"1000stake","tx_status":"成功","status":"1","data":[{"type":"send","data":{"from_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","to_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","amount":[{"denom":"stake","amount":"1000000"}]}}],"time":"2019-09-06 17:59:33.5797959+08","log":"[{\"msg_index\":0,\"success\":true,\"log\":\"\"}]","created_at":"0001-01-01 00:00:00.1279790+08","tx_detail":{"send":[{"from_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","to_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","amount":[{"denom":"stake","amount":"1000000"}]}]}}]}
{"jsonrpc":"2.0","id":"","result":[{"chain_id":"","hash":"D6012A7D46E73FEEE53021F7D35778B08151126AF92E03CF63C885A55CD6D521","height":"110159","index":"0","tx_type":"begin_unbonding","tx_type_cn":"终止委托","gas_wanted":"200000","gas_used":"121507","fee":"1000stake","tx_status":"成功","status":"1","data":[{"type":"begin_unbonding","data":{"delegator_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","validator_address":"cosmosvaloper1r6zq2r3d2cddz59p5cat2cazeavh8uq99wxw8l","amount":{"denom":"stake","amount":"1000000"}}}],"time":"2019-09-06 18:08:14.679798+08","log":"[{\"msg_index\":0,\"success\":true,\"log\":\"\"}]","created_at":"0001-01-01 00:00:00.1279790+08","tx_detail":{"begin_unbonding":[{"delegator_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","validator_address":"cosmosvaloper1r6zq2r3d2cddz59p5cat2cazeavh8uq99wxw8l","amount":{"denom":"stake","amount":"1000000"}}]}},{"chain_id":"","hash":"1ADB55BA1029F6E4B4DC5FD3BAF1A20458BCE8D43008CAF4402BD7FBD90C7A44","height":"110156","index":"0","tx_type":"withdraw_delegator_reward","tx_type_cn":"取回分红","gas_wanted":"200000","gas_used":"80770","fee":"1000stake","tx_status":"成功","status":"1","data":[{"type":"withdraw_delegator_reward","data":{"delegator_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","validator_address":"cosmosvaloper1r6zq2r3d2cddz59p5cat2cazeavh8uq99wxw8l"}}],"time":"2019-09-06 18:07:57.679797+08","log":"[{\"msg_index\":0,\"success\":true,\"log\":\"\"}]","created_at":"0001-01-01 00:00:00.1279790+08","tx_detail":{"withdraw_delegator_reward":[{"delegator_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","validator_address":"cosmosvaloper1r6zq2r3d2cddz59p5cat2cazeavh8uq99wxw8l"}]}},{"chain_id":"","hash":"3682205CFA96616235284E12C3785013A350CF5ADB7FDD28F355C03C1269283B","height":"110067","index":"0","tx_type":"send","tx_type_cn":"转出","gas_wanted":"200000","gas_used":"40063","fee":"1000stake","tx_status":"成功","status":"1","data":[{"type":"send","data":{"from_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","to_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","amount":[{"denom":"stake","amount":"1000000"}]}}],"time":"2019-09-06 17:59:33.5797959+08","log":"[{\"msg_index\":0,\"success\":true,\"log\":\"\"}]","created_at":"0001-01-01 00:00:00.1279790+08","tx_detail":{"send":[{"from_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","to_address":"cosmos18pmjwdtfnfyj4ycdd4gjjplejry0h9f5ps2efa","amount":[{"denom":"stake","amount":"1000000"}]}]}}]}
https://org.modao.cc/app/c18d1ce7f7baeb9c2483811ea4f0b64b4985de46#screen=s309ec22f78180e908bd973
With new QOS explorer requirement, a new QOS client is in need for the corresponding data parsing.
This part will be done in the qmoon_split
as well as the current master branch.
带voting power百分比的
Tendermint系列的节点发现功能,通过tendermint的块信息查询P2P邻居Peer。
http://47.105.160.162:26657/net_info
result.peers[].remote_ip
目前依赖tendermint提供的rpc,测试数据需要一种构造模式
Qmoon only support QOS now。 How to design to support more chains
普通validator漏签记录获取的数据超过上千条,jailed节点数据量更多,前端显示只需要最近10条,所以请提供missing接口分页查询功能。
Validator info including address info could not be parsed since latest QOS upgrading with internal testnet chain-id pre-2000
From corresponding qoscli
the validator query information was shown as below:
[vagrant@vagrant-192-168-1-223 pre2000]$ ./qoscli query validators --node "tcp://192.168.1.218:26657"
[{"validator":"qosval1d880y3hmj62m4c9xx3spfkjm3lh32swrh9mffj","owner":"qosacc1d880y3hmj62m4c9xx3spfkjm3lh32swr04420l","consensusAddress":"qoscons1dxsrlf8tedxtjlvp2pfn8lshup7v6cn800zmj4","consensusPubKey":"qosconspub1zcjduepq5nssdqz29u52uh3rwtvhy50n9aa4mxrny7nx6500sukwn7ggqlnq0epc3v","bondTokens":"10000","description":{"moniker":"qos","logo":"","website":"","details":""},"commission":{"commission_rates":{"rate":"0.100000000000000000","max_rate":"0.200000000000000000","max_change_rate":"0.010000000000000000"},"update_time":"0001-01-01T00:00:00Z"},"status":"active","InactiveDesc":"","inactiveTime":"0001-01-01T00:00:00Z","inactiveHeight":"0","minPeriod":"0","bondHeight":"0"}]
A tag is required for the latest version on master branch.
consensus data is missing in block parsing, currently there is only transactions parsing, the consensus data is still in need.
提供API接口接收来自前端本地生成的签名交易信息并将其广播到链上
There are 2 chains right now for explorer: cosmoshub-2
and Capricorn-3000
The order should be Capricorn-3000
at 1st and then other chain.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.