Coder Social home page Coder Social logo

clowwindy / kids Goto Github PK

View Code? Open in Web Editor NEW

This project forked from zhihu/kids

1.0 3.0 4.0 569 KB

Kids Is Data Stream

License: BSD 3-Clause "New" or "Revised" License

Shell 0.02% Makefile 0.02% C 6.19% Go 0.56% C++ 92.47% Ragel in Ruby Host 0.11% Bison 0.25% Python 0.38%

kids's Introduction

kids

Kids is a log aggregation system.

It aggregates messages like Scribe and its pub/sub pattern is ported from Redis.

Features

  • Real-time subscription
  • Distributed collection
  • Message persistence
  • Multithreading
  • Redis protocol
  • No third-party dependencies

Installation

You need a complier with C++11 support like GCC 4.7 (or later) or Clang.

Download a release. Untar the tarball, then:

./configure
make
make test  # optional
make install

By default, it will be installed to /usr/local/bin/kids. You can use the --prefix option to specify the installation location. Run ./configure --help for more config options.

Quickstart

In the distributed mode, first start kids with the server.conf:

kids -c sample/server.conf

Next, edit host and port in networkstore in sample/agent.conf as:

store network primary {
  host kidsserver;
  port 3388;
}

Then, run kids with the modified config file:

kids -c sample/agent.conf

Finally, use publish command in Redis protocol to send log to kids agent. All the log will be resent to your kids server and persistently stored to disk for analysis later. You can also use subscribe or psubscribe in Redis protocol to get real-time log from kids server.

Full explanation of config file, see here.

You can directly run kids -c sample/server.conf on single-server mode without agent, but it is NOT recommended.

Run kids --help for more running options.

License

Kids is BSD-licensed, see LICENSE for more details.

FAQ

Q: What is the meaning of "kids"?
A: "kids" is the recursive acronym of "Kids Is Data Stream".

Architecture

image

You can view the Chinese version README here

kids's People

Contributors

clowwindy avatar dccmx avatar shanicky avatar xiaogaozi avatar

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.