RPCProxy

command module
v0.0.0-...-c397bd6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 10, 2018 License: MIT Imports: 13 Imported by: 0

README

RPCProxy

About

At Thunder, we found ourselves wanting a tool to help us monitor and log the details of our RPC calls. We forked @ymedialabs' ReverseProxy and made it pick out the different RPC calls being made.

Prerequisites

Getting Started

After cloning this repository, run the build script with sh build.sh. This will clone the go-ethereum repository into your directory (under src), adjust your GOPATH, and build the binary for RPCProxy.

Running RPCProxy

By default, RPCProxy will be running on http://localhost:9999 and it will be forwarding the requests to http://testnet-rpc.thundercore.com:8545. You can specify the forwarding "port" and "url" by using the -port and -url command line options.

Running the binary:

./RPCProxy

Setting new parameters to run the binary with:

./RPCProxy -port=9090 -url=http://other_rpc:8545

Outputting the contents to a log file:

./RPCProxy 2>log.txt

Output

When you run RPCProxy, it will print the port where the proxy is running and where it is redirecting the request to.

When requests start being made, it will print the RPC call and parameters used, the HTTP headers, the raw transaction data, and the response to stderr. It should look something like this:

eth_getBalance [0x9a78d67096ba0c7c1bcdc0a8742649bc399119c0 latest]
2018/08/06 17:23:57 ----------------New Request-------------------------
 {"id":5289471075661898,"jsonrpc":"2.0","params":["0x9a78d67096ba0c7c1bcdc0a8742649bc399119c0","latest"],"method":"eth_getBalance"}  
    Response Time 107301342 
    Response Body------
 HTTP/1.1 200 OK
Content-Length: 76
Access-Control-Allow-Origin: chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn
Content-Type: application/json
Date: Mon, 06 Aug 2018 21:23:57 GMT
Vary: Origin

{"jsonrpc":"2.0","id":5289471075661898,"result":"0x49fb0a92b073f3c1a2f6cc"}

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL