Skip to content

chris-j-h/splunk-connect-for-ethereum

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

81 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Splunk Connect for Ethereum

Splunk Connect for Ethereum (aka ethlogger) makes it easy to ingest data about Ethereum ledgers, node information, and node metrics into another system for analysis. Currently, it can log to the Splunk HTTP Event Collector and stdout. It can also deserialize transactions and events if given a contract ABI. Some benefits include:

  • Support for any Ethereum 1.0 JSON-RPC compatible blockchain or sidechain, including Quorum 🦄.
  • Reliably saves state between restarts so you never have missing or duplicated events 🧘‍.
  • Highly performant batching and compression algorithm 🚄.
  • Extracts a rich set of node information and metrics in order to gain deep insight into your node 🙉.
  • Introspects your node platform (i.e. geth, parity, besu or quorum) in order to ensure maximum data extraction 🎂.
  • Contract fingerprinting in order to match ABIs with function signatures (i.e. we can decode the parameter names too!) 🔎.
  • Enables awesome dashboards (keepin' it 200) 💯💯.

If you want to learn more about Splunk's efforts to make blockchains stable, secure, and scalable raise an issue here or email us at blockchain at splunk dot com.

Usage

$ ethlogger [...options]

Details about ethlogger's command-line usage in the CLI docs

Configuration

Find out how to configure ethlogger in the configuration docs.

Docker

Splunk Connect for Ethereum can also be run as a docker image. You can pull the image from Github package registry (Make sure to set up docker to pull images from Github package registry).

Example:

$ docker run -it docker.pkg.github.com/splunk/splunk-connect-for-ethereum/ethlogger:latest \
    --eth-rpc-url=https://dai.poa.network \
    --start-at-block=latest \
    --hec-url=https://mysplunkserver.com:8088 \
    --hec-token=123-123-123-123 \
    --hec-events-index=main \
    --hec-metrics-index=metrics

There is also an example on how to run ethlogger in docker-compose.

Troubleshooting

There's a lot of information available via RPC on Ethereum nodes, but they need to be enabled via the command line on startup for ethlogger to connect. See the relevant docs for:

  • Geth and Quorum Docs or you can turn it all on: --rpcapi admin,db,eth,debug,miner,net,shh,txpool,personal,web3
  • Quorum Specific Endpoints: --rpcapi quorum,istanbul,raft (note: only one of istanbul or raft is active depending on the consensus method)
  • Geth and Quorum: ensure that the host ethlogger is running on is whitelisted in the --rpcvhosts cli setting.
  • Parity Endpoints: note that the command line flag is --jsonrpc-apis APIs
  • Besu Endpoints

About

Splunk Connect for Ethereum

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages