Case Study

From Open Source to Optimized: iHerb’s Data Journey with Cribl

star-round-framed
Highlights
Webinar

Observability Pipelines:
Build vs. Buy?

Hear Bob Chen, Director of Infrastructure Engineering at iHerb and Cribl’s Mike Dupuis discuss iHerb’s observability pipeline journey.

“ULTIMATELY, WE ALSO ENDED UP AS A SELF-SERVICE MODEL FOR SOME OF OUR DEV TEAMS. THEY CAN DO A LOT ON THEIR OWN, SO NOW I DON’T GET A JIRA TICKET TO SET UP ANY NEW SOURCES OR DESTINATIONS.”

“OUTAGES ARE COSTLY FOR US AS AN E-COMMERCE ORGANIZATION — CRIBL STREAM ALLOWS OUR ENGINEERS TO USE THEIR TIME AND EXPERTISE ON MINIMIZING DOWNTIME AND OTHER IMPORTANT TASKS.”

“CRIBL STREAM PAID FOR ITSELF, CRIBL EDGE PAYS FOR ITSELF.”

Share:

iHerb.com is the premier online shop for health and wellness products, offering 30k+ items to 9.5 million customers in 185+ countries. As they’ve grown, iHerb could no longer dedicate the required time and resources to sustain their open-source data platform. Switching to Cribl has significantly cut costs associated with infrastructure, latency, engineering time, and downtime.

A few years ago, iHerb set out to build a real-time stream processing system for their logging data. However, developing an in-house observability pipeline consumed a lot of engineering resources and left them with a lot of technical debt, making the solution costly and unmanageable for the long term.

As an online retailer, iHerb was processing 2–3TB of weblogs daily, so configuring sources and keeping systems up to date was eating up valuable engineering time. Bob Chen, the organization’s Senior Director of Infrastructure Engineering, mentioned the other factors that led to the switch from building their own tool to using Cribl Stream:

“We wanted an easy-to-use tool without having to tap into a UX team. A good API interface was critical, as was support for multiple logging sources and destinations. It turned out Cribl Stream could provide all that, and it was easy to implement and deploy, so we made the choice to put our build on hold.”

Using Selective Routing to Manage Doubling Data Volumes

The decision to switch from open source to Cribl Stream came at just the right time, as the amount of data iHerb processed daily, doubled. Their data now flows seamlessly from sources like Kafka and Fluentd to destinations like S3, Loki, Elastic Stack (Elasticsearch, Logstash, Kibana), and Splunk.

All that data goes to S3 for long-term storage, with most logs going to Elastic for short-term (<3 months) storage. Some selected logs get sent to Loki for retention periods between 3–6 months. iHerb’s Security department provides guidelines to Bob and his team regarding which data gets sent to Splunk for security use cases.

“We process a lot of data each day, and we can’t afford to skip even a few KB of it — we need every log entry to troubleshoot incidents and identify other issues. Using Cribl Stream helps us avoid losing any of the critical data we need.”

Reduced Load on Analysis Tools
Cribl Stream’s ability to help iHerb be surgical about their data–selective dropping, sampling, suppression of whole events, and routing data to the best tool for analysis–makes Splunk, Elastic, and Loki return searches faster while reducing required infrastructure and processing power. The ability to simply configure pipelines allows for easy reformatting, removal of redundant or unnecessary fields, stripping out null JSON values, and more. Stream also offers native data transformation functionality, simplifying data management and reducing storage of surplus data. Annotations in Kubernetes metadata can vary in size, and the data is often unstructured. iHerb uses Stream to trim out unnecessary fields and clean up, redact or transform these events.
Improved Security With Masking and Replay Features

With the increase in cybersecurity incidents in recent years, securing sensitive data is more important than ever. iHerb leverages Cribl Stream to mask sensitive patterns using redaction, hashing, or randomization. These functions allow Bob and his team to mask PII for the security team.

If a security incident does occur, Cribl Stream’s Replay feature allows them to selectively re-ingest data from S3 back into their systems of analysis. And going forward they’ll be able to use Cribl Search, which allows you to search data in place (ie before ingesting into analytics tools), to find investigation-related context from across various S3 buckets.

Observability, Metrics, and Beyond

Many teams leverage Elastic for log analysis, but it’s also a popular choice for handling metrics. iHerb uses Cribl Stream to query and aggregate log counts and other statistics based on parameters like cluster, namespace, and source. The results are then routed from Elastic into an intuitive, user-friendly Grafana dashboard, enabling them to gain valuable insights into system performance, identify trends, and troubleshoot issues effectively.

Since successfully implementing Cribl Stream, Bob and team have also used Cribl Edge to implement a couple thousand edge nodes. Cribl Edge is a centrally managed, edge-based data collection system.

Kubernetes, an integral part of iHerb’s infrastructure, is notoriously difficult to monitor and often limited by the observability of the system. iHerb deploys Kubernetes with Edge already bootstrapped to collect application logs and system metrics, giving them visibility into Kubernetes microservices.

“The combination of Cribl Stream and Edge is a lifesaver. The speed, accuracy, and ability to manipulate logs is unparalleled.”

By using Cribl Stream and Edge instead of building their own infrastructure, iHerb has been able to save on infrastructure, network bandwidth, engineering, and outage costs — and the setup was even easier than Bob and his team anticipated.

“We got our Cribl Stream POC up and running within a week. We tested as many scenarios as we could, pushed a bunch of our logs through a test environment, then made the purchase and got our production environment going remarkably quickly.”

TL;DR
  • iHerb switched from building their own observability infrastructure to using Cribl Stream.
  • Reduced volume of data stored via selective dropping, sampling, and suppression of whole events.
  • Secured sensitive data using redaction, hashing, or randomization with Cribl Stream’s Mask function.
  • Reduced load on Splunk, Elastic, and Loki by intelligently filtering which logs end up in each destination.
  • Aggregated logs and metrics to create user-friendly dashboards in Grafana.
  • Leveraging Cribl’s portfolio of products — Cribl Stream, Search, and Edge — gives them control of what data they collect, and helps to save time and money by routing data to the best, most cost effective place for storage, analysis and compliance.

About Cribl

Cribl makes open observability a reality for today’s tech professionals. The Cribl product suite defies data gravity with radical levels of choice and control. Wherever the data comes from, wherever it needs to go, Cribl delivers the freedom and flexibility to make choices, not compromises. It’s enterprise software that doesn’t suck, enables tech professionals to do what they need to do, and gives them the ability to say “Yes.” With Cribl, companies have the power to control their data, get more out of existing investments, and shape the observability future. Founded in 2017, Cribl is a remote-first company with an office in San Francisco, CA. For more information, visit cribl.io or our LinkedIn, Twitter, or Slack community.
Pixel Mask

So you're rockin' Internet Explorer!

Classic choice. Sadly, our website is designed for all modern supported browsers like Edge, Chrome, Firefox, and Safari

Got one of those handy?