Mentee: Mayank Bondre
Deliverables
Deliverable PRs |
---|
Adds container info field in logstash configuration |
Create the foundation for multiple Logstash pipelines |
Elasticsearch integration |
Add filter for orderer pipeline |
Project Documentation (Google Doc): Link
Learnings
The development of this project can be segmented into three crucial phases:
Analysis of Fabric Logs
Before I started working on creating a performance analysis tool, I decided to dig into a bunch of Hyperledger Fabric logs. This was my first time diving into this kind of research, making it quite exciting. I explored different versions and configurations, checking out things like whether there was a peer gateway or not. My goal was to pinpoint the crucial log lines that I needed to include in our service. It turned out to be a fascinating journey, and I learned a lot about the inner workings of Fabric during this process.
Development of Logstash Pipelines
In the next step, I set up an input log pipeline to direct logs to their respective pipelines. This was also my first exposure to setting up a Docker service. I then created separate pipelines for each service, like one for peer and another for orderer, to handle specific logs. Additionally, I delved into log processing with Logstash and interacted with the ELK stack. After preprocessing and adding necessary tags, I stored the logs in a CouchDB database for future retrieval. This phase not only taught me about log processing, but also provided valuable insights into working with Logstash and other ELK services.
Development of Python Script for Performance Analysis and Visualization
In the final phase, I developed a Python script to fetch and structure the logs. The script not only conducted performance analysis but also presented the information visually.
Articles
Hashnode Blog: Link
Understanding Hyperledger Fabric: Architecture, Chaincode, Membership, Consensus: Link