Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
plugin
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
link33
plugin
Commits
abb1817a
Commit
abb1817a
authored
Jan 15, 2020
by
hezhengjun
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
enable metrics
parent
90d2f148
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
293 additions
and
13 deletions
+293
-13
Makefile
Makefile
+8
-0
docker-compose-metrics.yml
build/docker-compose-metrics.yml
+54
-0
docker-compose-pre.sh
build/docker-compose-pre.sh
+15
-5
docker-compose.sh
build/docker-compose.sh
+8
-0
influxdb.conf
build/influxdb.conf
+151
-0
readme.md
build/metrics/readme.md
+18
-0
chain33.para.toml
chain33.para.toml
+15
-0
chain33.toml
chain33.toml
+16
-0
go.mod
go.mod
+1
-1
go.sum
go.sum
+7
-7
No files found.
Makefile
View file @
abb1817a
...
...
@@ -121,6 +121,13 @@ docker-compose-down: ## build docker-compose for chain33 run
fi
;
\
cd
..
metrics
:
##
build docker-compose for chain33 metrics
@
cd
build
&&
if
!
[
-d
ci
]
;
then
\
make
-C
../
;
\
fi
;
\
cp
chain33
*
Dockerfile docker-compose.yml docker-compose-metrics.yml influxdb.conf
*
.sh ci/paracross/testcase.sh metrics/
&&
./docker-compose-pre.sh run
$(proj)
metrics
&&
cd
../..
fork-test
:
##
build fork-test for chain33 run
@
cd
build
&&
cp
chain33
*
Dockerfile system-fork-test.sh docker-compose
*
ci/
&&
cd
ci/
&&
./docker-compose-pre.sh forktest
$(proj)
$(dapp)
&&
cd
../..
...
...
@@ -135,6 +142,7 @@ clean: ## Remove previous build
@
rm
-rf
build/ci
@
rm
-rf
build/system-rpc-test.sh
@
rm
-rf
tool
@
cd
build/metrics
&&
find
*
-not
-name
readme.md | xargs
rm
-fr
&&
cd
../..
@
go clean
proto
:
protobuf
...
...
build/docker-compose-metrics.yml
0 → 100644
View file @
abb1817a
version
:
'
3'
services
:
chain33
:
entrypoint
:
/root/entrypoint.sh
environment
:
PARAFILE
:
"
/root/chain33.para33.toml"
expose
:
-
"
8802"
chain32
:
entrypoint
:
/root/entrypoint.sh
environment
:
PARAFILE
:
"
/root/chain33.para32.toml"
chain31
:
entrypoint
:
/root/entrypoint.sh
environment
:
PARAFILE
:
"
/root/chain33.para31.toml"
chain30
:
entrypoint
:
/root/entrypoint.sh
environment
:
PARAFILE
:
"
/root/chain33.para30.toml"
expose
:
-
"
8802"
nginx
:
image
:
nginx:latest
depends_on
:
-
chain33
-
chain30
volumes
:
-
./nginx.conf:/etc/nginx/nginx.conf
expose
:
-
"
8803"
influxdb
:
image
:
influxdb:latest
environment
:
INFLUXDB_DB
:
"
db"
volumes
:
-
./influxdb.conf:/etc/influxdb/influxdb.conf
expose
:
-
"
8089/udp"
-
"
8086"
grafana
:
image
:
grafana/grafana
expose
:
-
"
3000"
build/docker-compose-pre.sh
View file @
abb1817a
...
...
@@ -37,12 +37,22 @@ function run_dapp() {
local test
=
$2
echo
"============ run dapp=
$app
start ================="
rm
-rf
"
${
app
}
"
-ci
&&
mkdir
-p
"
${
app
}
"
-ci
&&
cp
./
"
${
app
}
"
/
*
./
"
${
app
}
"
-ci
&&
echo
$?
cp
-n
./
*
./
"
${
app
}
"
-ci
/
&&
echo
$?
if
[
"
$app
"
==
"paracross"
]
;
then
cp
-r
dapptest/
"
${
app
}
"
-ci
/
&&
echo
$?
if
[
"
$app
"
==
"metrics"
]
;
then
cp
./ci/paracross/
*
./metrics
&&
echo
$?
cp
-n
./
*
./metrics/
&&
echo
$?
cp
-r
ci/dapptest/ metrics/
&&
echo
$?
cd
metrics
&&
pwd
rm
docker-compose-paracross.yml
mv
docker-compose-metrics.yml docker-compose-paracross.yml
app
=
"paracross"
else
rm
-rf
"
${
app
}
"
-ci
&&
mkdir
-p
"
${
app
}
"
-ci
&&
cp
./
"
${
app
}
"
/
*
./
"
${
app
}
"
-ci
&&
echo
$?
cp
-n
./
*
./
"
${
app
}
"
-ci
/
&&
echo
$?
if
[
"
$app
"
==
"paracross"
]
;
then
cp
-r
dapptest/
"
${
app
}
"
-ci
/
&&
echo
$?
fi
cd
"
${
app
}
"
-ci
/
&&
pwd
fi
cd
"
${
app
}
"
-ci
/
&&
pwd
if
[
"
$test
"
==
"
$FORKTESTFILE
"
]
;
then
sed
-i
$sedfix
's/^system_coins_file=.*/system_coins_file="..\/system\/coins\/fork-test.sh"/g'
system-fork-test.sh
...
...
build/docker-compose.sh
View file @
abb1817a
...
...
@@ -131,6 +131,14 @@ function start() {
docker-compose ps
set
+e
influxdbcontainer
=
$(
docker ps
-a
|
grep
build_influxdb_1
)
if
[
-n
"
$influxdbcontainer
"
]
;
then
echo
"create database chain33metrics in docker container build_influxdb_1"
docker
exec
build_influxdb_1 influx
-execute
'create database chain33metrics'
fi
set
-e
# query node run status
check_docker_status
${
CLI
}
block last_header
...
...
build/influxdb.conf
0 → 100644
View file @
abb1817a
reporting
-
disabled
=
false
bind
-
address
=
"127.0.0.1:8088"
[
meta
]
dir
=
"/var/lib/influxdb/meta"
retention
-
autocreate
=
true
logging
-
enabled
=
true
[
data
]
dir
=
"/var/lib/influxdb/data"
index
-
version
=
"inmem"
wal
-
dir
=
"/var/lib/influxdb/wal"
wal
-
fsync
-
delay
=
"0s"
validate
-
keys
=
false
query
-
log
-
enabled
=
true
cache
-
max
-
memory
-
size
=
1073741824
cache
-
snapshot
-
memory
-
size
=
26214400
cache
-
snapshot
-
write
-
cold
-
duration
=
"10m0s"
compact
-
full
-
write
-
cold
-
duration
=
"4h0m0s"
compact
-
throughput
=
50331648
compact
-
throughput
-
burst
=
50331648
max
-
series
-
per
-
database
=
1000000
max
-
values
-
per
-
tag
=
100000
max
-
concurrent
-
compactions
=
0
max
-
index
-
log
-
file
-
size
=
1048576
trace
-
logging
-
enabled
=
false
tsm
-
use
-
madv
-
willneed
=
false
[
coordinator
]
write
-
timeout
=
"10s"
max
-
concurrent
-
queries
=
0
query
-
timeout
=
"0s"
log
-
queries
-
after
=
"0s"
max
-
select
-
point
=
0
max
-
select
-
series
=
0
max
-
select
-
buckets
=
0
[
retention
]
enabled
=
true
check
-
interval
=
"30m0s"
[
shard
-
precreation
]
enabled
=
true
check
-
interval
=
"10m0s"
advance
-
period
=
"30m0s"
[
monitor
]
store
-
enabled
=
true
store
-
database
=
"_internal"
store
-
interval
=
"10s"
[
subscriber
]
enabled
=
true
http
-
timeout
=
"30s"
insecure
-
skip
-
verify
=
false
ca
-
certs
=
""
write
-
concurrency
=
40
write
-
buffer
-
size
=
1000
[
http
]
enabled
=
true
bind
-
address
=
":8086"
auth
-
enabled
=
false
log
-
enabled
=
true
suppress
-
write
-
log
=
false
write
-
tracing
=
false
flux
-
enabled
=
false
pprof
-
enabled
=
true
debug
-
pprof
-
enabled
=
false
https
-
enabled
=
false
https
-
certificate
=
"/etc/ssl/influxdb.pem"
https
-
private
-
key
=
""
max
-
row
-
limit
=
0
max
-
connection
-
limit
=
0
shared
-
secret
=
""
realm
=
"InfluxDB"
unix
-
socket
-
enabled
=
false
unix
-
socket
-
permissions
=
"0777"
bind
-
socket
=
"/var/run/influxdb.sock"
max
-
body
-
size
=
25000000
access
-
log
-
path
=
""
max
-
concurrent
-
write
-
limit
=
0
max
-
enqueued
-
write
-
limit
=
0
enqueued
-
write
-
timeout
=
30000000000
[
logging
]
format
=
"auto"
level
=
"info"
suppress
-
logo
=
false
[[
graphite
]]
enabled
=
false
bind
-
address
=
":2003"
database
=
"graphite"
retention
-
policy
=
""
protocol
=
"tcp"
batch
-
size
=
5000
batch
-
pending
=
10
batch
-
timeout
=
"1s"
consistency
-
level
=
"one"
separator
=
"."
udp
-
read
-
buffer
=
0
[[
collectd
]]
enabled
=
false
bind
-
address
=
":25826"
database
=
"collectd"
retention
-
policy
=
""
batch
-
size
=
5000
batch
-
pending
=
10
batch
-
timeout
=
"10s"
read
-
buffer
=
0
typesdb
=
"/usr/share/collectd/types.db"
security
-
level
=
"none"
auth
-
file
=
"/etc/collectd/auth_file"
parse
-
multivalue
-
plugin
=
"split"
[[
opentsdb
]]
enabled
=
false
bind
-
address
=
":4242"
database
=
"opentsdb"
retention
-
policy
=
""
consistency
-
level
=
"one"
tls
-
enabled
=
false
certificate
=
"/etc/ssl/influxdb.pem"
batch
-
size
=
1000
batch
-
pending
=
5
batch
-
timeout
=
"1s"
log
-
point
-
errors
=
true
[[
udp
]]
enabled
=
true
bind
-
address
=
":8089"
database
=
"db"
retention
-
policy
=
""
batch
-
size
=
1
batch
-
pending
=
1
read
-
buffer
=
0
batch
-
timeout
=
"1s"
precision
=
""
[
continuous_queries
]
log
-
enabled
=
true
enabled
=
true
query
-
stats
-
enabled
=
false
run
-
interval
=
"1s"
[
tls
]
min
-
version
=
""
max
-
version
=
""
build/metrics/readme.md
0 → 100644
View file @
abb1817a
# Metrics 功能
*
通过make metrics来测试plugin的metrics数据收集功能
*
在容器build_influxdb_1中运行以下语句,查看结果:
```
1.influx 进入influxdb交互界面
```
```
2.use chain33metrics
```
```
3.show field keys
```
```
4.使用select进行查询,如select * from mesurment
```
chain33.para.toml
View file @
abb1817a
...
...
@@ -318,3 +318,18 @@ ForkKvmvccmavl=0
[pprof]
listenAddr
=
"localhost:6061"
[metrics]
#是否使能发送metrics数据的发送
enableMetrics
=
true
#数据保存模式
dataEmitMode
=
"influxdb"
[metrics.sub.influxdb]
#以纳秒为单位的发送间隔
duration
=
1000000000
url
=
"http://influxdb:8086"
database
=
"chain33metrics"
username
=
""
password
=
""
namespace
=
""
chain33.toml
View file @
abb1817a
...
...
@@ -244,3 +244,18 @@ paraConsensusStopBlocks=30000
[exec.sub.autonomy]
total
=
"16htvcBNSEA7fZhAdLJphDwQRQJaHpyHTp"
useBalance
=
false
[metrics]
#是否使能发送metrics数据的发送
enableMetrics
=
true
#数据保存模式
dataEmitMode
=
"influxdb"
[metrics.sub.influxdb]
#以纳秒为单位的发送间隔
duration
=
1000000000
url
=
"http://influxdb:8086"
database
=
"chain33metrics"
username
=
""
password
=
""
namespace
=
""
\ No newline at end of file
go.mod
View file @
abb1817a
...
...
@@ -3,7 +3,7 @@ module github.com/33cn/plugin
go 1.12
require (
github.com/33cn/chain33 v0.0.0-202001
08042336-2dda2dfb7e0e
github.com/33cn/chain33 v0.0.0-202001
14070319-ef01c7b69d82
github.com/BurntSushi/toml v0.3.1
github.com/NebulousLabs/Sia v1.3.7
github.com/beorn7/perks v1.0.1 // indirect
...
...
go.sum
View file @
abb1817a
cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
github.com/33cn/chain33 v0.0.0-202001
08042336-2dda2dfb7e0e h1:FMnJCJUDEsjHURlHv3zqiiftvNCtTbsMSjXSykG7htc
=
github.com/33cn/chain33 v0.0.0-202001
08042336-2dda2dfb7e0e/go.mod h1:4I8n+Zyf3t0UKM5jjpqJY627Tub62oXkLsdzIv4r6rQ
=
github.com/33cn/chain33 v0.0.0-202001
14070319-ef01c7b69d82 h1:iTNQWEYAek9YmLcGScdBo2mODy+JOe7gOJl+PgpKjO8
=
github.com/33cn/chain33 v0.0.0-202001
14070319-ef01c7b69d82/go.mod h1:lhZbNbCnCGsiiapxGZcSxfxKdIAdCK0UzHgpp65XMlM
=
github.com/AndreasBriese/bbloom v0.0.0-20180913140656-343706a395b7 h1:PqzgE6kAMi81xWQA2QIVxjWkFHptGgC547vchpUbtFo=
github.com/AndreasBriese/bbloom v0.0.0-20180913140656-343706a395b7/go.mod h1:bOvUY6CB00SOBii9/FifXqc0awNKxLFCL/+pkDPuyl8=
github.com/BurntSushi/toml v0.3.1 h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ=
...
...
@@ -78,6 +78,7 @@ github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5y
github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db h1:woRePGFeVFfLKN/pOkfl+p/TAqKOfFu+7KPlMVpok/w=
github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q=
github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M=
github.com/google/go-cmp v0.3.0 h1:crn/baboCvb5fXaQ0IJ1SGTsTVrWpDsCWC8EGETZijY=
github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU=
github.com/haltingstate/secp256k1-go v0.0.0-20151224084235-572209b26df6 h1:HE4YDtvtpZgjRJ2tCOmaXlcpBTFG2e0jvfNntM5sXOs=
github.com/haltingstate/secp256k1-go v0.0.0-20151224084235-572209b26df6/go.mod h1:73mKQiY8bLnscfGakn57WAJZTzT0eSUAy3qgMQNR/DI=
...
...
@@ -90,6 +91,8 @@ github.com/huin/goupnp v1.0.0/go.mod h1:n9v9KO1tAxYH82qOn+UTIFQDmx5n1Zxd/ClZDMX7
github.com/huin/goutil v0.0.0-20170803182201-1ca381bf3150/go.mod h1:PpLOETDnJ0o3iZrZfqZzyLl6l7F3c6L1oWn7OICBi6o=
github.com/inconshreveable/mousetrap v1.0.0 h1:Z8tu5sraLXCXIcARxBp/8cbvlwVa7Z1NHg9XEKhtSvM=
github.com/inconshreveable/mousetrap v1.0.0/go.mod h1:PxqpIevigyE2G7u3NXJIT2ANytuPF1OarO4DADm73n8=
github.com/influxdata/influxdb v1.7.9 h1:uSeBTNO4rBkbp1Be5FKRsAmglM9nlx25TzVQRQt1An4=
github.com/influxdata/influxdb v1.7.9/go.mod h1:qZna6X/4elxqT3yI9iZYdZrWWdeFOOprn86kgg4+IzY=
github.com/jackpal/go-nat-pmp v1.0.1 h1:i0LektDkO1QlrTm/cSuP+PyBCDnYvjPLGl4LdWEMiaA=
github.com/jackpal/go-nat-pmp v1.0.1/go.mod h1:QPH045xvCAeXUZOxsnwmrtiCoxIr9eob+4orBN1SBKc=
github.com/julienschmidt/httprouter v1.2.0/go.mod h1:SYymIcj16QtmaHHD7aYtjjsJG7VTCxuUUipMqKk8s4w=
...
...
@@ -135,6 +138,8 @@ github.com/prometheus/procfs v0.0.0-20181005140218-185b4288413d/go.mod h1:c3At6R
github.com/prometheus/procfs v0.0.0-20181204211112-1dc9a6cbc91a/go.mod h1:c3At6R/oaqEKCNdg8wHV1ftS6bRYblBhIjjI8uT2IGk=
github.com/prometheus/procfs v0.0.3 h1:CTwfnzjQ+8dS6MhHHu4YswVAD99sL2wjPqP+VkURmKE=
github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ=
github.com/rcrowley/go-metrics v0.0.0-20190826022208-cac0b30c2563 h1:dY6ETXrvDG7Sa4vE8ZQG4yqWg6UnOcbqTAahkV813vQ=
github.com/rcrowley/go-metrics v0.0.0-20190826022208-cac0b30c2563/go.mod h1:bCqnVzQkZxMG4s8nGwiZ5l3QUCyqpo9Y+/ZMZ9VjZe4=
github.com/robertkrimen/otto v0.0.0-20180617131154-15f95af6e78d h1:1VUlQbCfkoSGv7qP7Y+ro3ap1P1pPZxgdGVqiTVy5C4=
github.com/robertkrimen/otto v0.0.0-20180617131154-15f95af6e78d/go.mod h1:xvqspoSXJTIpemEonrMDFq6XzwHYYgToXWj5eRX1OtY=
github.com/rs/cors v1.6.0 h1:G9tHG9lebljV9mfp9SNPDL36nCDxmo3zTlAf1YgvzmI=
...
...
@@ -161,7 +166,6 @@ github.com/valyala/bytebufferpool v1.0.0/go.mod h1:6bBcMArwyJ5K/AmCkWv1jt77kVWyC
github.com/valyala/fasthttp v1.5.0 h1:dhq+O9pmNZFF6qAXpasMO1xSm7dL4qEz2ylfZN8BG9w=
github.com/valyala/fasthttp v1.5.0/go.mod h1:eriCz9OhZjKCGfJ185a/IDgNl0bg9IbzfpcslMZXU1c=
github.com/valyala/tcplisten v0.0.0-20161114210144-ceec8f93295a/go.mod h1:v3UYOV9WzVtRmSR+PDvWpU/qWl4Wa5LApYYX4ZtKbio=
github.com/vektra/mockery v0.0.0-20181123154057-e78b021dcbb5/go.mod h1:ppEjwdhyy7Y31EnHRDm1JkChoC7LXIJ7Ex0VYLWtZtQ=
github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2 h1:eY9dn8+vbi4tKz5Qo6v2eYzo7kUS51QINcR5jNpbZS8=
github.com/xiang90/probing v0.0.0-20190116061207-43a291ad63a2/go.mod h1:UETIi67q53MR2AWcXfiuqkDkRtnGDLqkBTpCHuJHxtU=
go.uber.org/atomic v1.4.0 h1:cxzIVoETapQEqDhQu3QfnvXAV4AlzcvUCxkVUFw3+EU=
...
...
@@ -181,7 +185,6 @@ golang.org/x/net v0.0.0-20181114220301-adae6a3d119a/go.mod h1:mL1N/T3taQHkDXs73r
golang.org/x/net v0.0.0-20181201002055-351d144fa1fc/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4=
golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg=
golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7 h1:fHDIZ2oxGnUZRN6WgWFCbYBjH9uqVPRCUVUDhs0wnbA=
golang.org/x/net v0.0.0-20190813141303-74dc4d7220e7/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s=
golang.org/x/net v0.0.0-20190827160401-ba9fcec4b297 h1:k7pJ2yAPLPgbskkFdhRCsA77k2fySZ1zf2zCjvQCiIM=
...
...
@@ -205,11 +208,8 @@ golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
golang.org/x/time v0.0.0-20190921001708-c4c64cad1fd0 h1:xQwXv67TxFo9nC1GJFyab5eq/5B590r6RlnL/G8Sz7w=
golang.org/x/time v0.0.0-20190921001708-c4c64cad1fd0/go.mod h1:tRJNPiyCQ0inRvYxbN9jk5I+vvW/OXSQhTDSoE431IQ=
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20181112210238-4b1f3b6b1646/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
golang.org/x/tools v0.0.0-20190311212946-11955173bddd/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs=
golang.org/x/tools v0.0.0-20190524140312-2c0ae7006135/go.mod h1:RgjU9mgBXZiqYHBnxXauZ1Gv1EHHAz9KjViQ78xBX0Q=
golang.org/x/tools v0.0.0-20190816200558-6889da9d5479/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo=
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8 h1:Nw54tB0rB7hY/N0NQvRW8DG4Yk3Q6T9cu9RcFQDu1tc=
google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment