GithubHelp home page GithubHelp logo

danceyoung / trycatch Goto Github PK

View Code? Open in Web Editor NEW
8.0 2.0 2.0 44.9 MB

Real-time with no special SDKs monitoring, notifying and aggregating application exception for backend coders.

Home Page: http://danceyoung.github.io/trycatchfinally/

License: MIT License

Java 9.78% HTML 4.38% CSS 8.42% JavaScript 49.83% Ruby 0.34% Swift 26.99% Objective-C 0.26%
bug track exception error-monitoring error-reporting bug-tracker bug-tracking-system

trycatch's Introduction

Written with StackEdit.

Trycatch

Real-time with no special SDKs monitoring, notifying and aggregating application exception for backend coders.

GitHub Page Website of TryCatch http://danceyoung.github.io/trycatchfinally/

enter image description here

Features

  • No SDKs embed

You're still under the current coding model, no need to be embed any SDK, you can collect what to be collected.

  • Real-time

Using Apache Flume Source watches the specified files, and tails them in nearly real-time once detected new lines appended to the each files. Customing Flume's HTTP Sink, send those content what you marked to server.

  • Push Notifications

You can download, install and login APP iOS, upon receipt of information related you will be immediately sent to your smart phone.

  • Analyzes and aggregates

TryCatch App and Web site all will real-time show the information summary or detail through different charts.

  • Finally solve

Errors are found in your applications, finally you will solve these errors. If you can't solve, you can open them to seek helps, for example opening to StackOverFlow.

Architecture

Trycatch consists of four parts:

  • backend server Implemented by golang, providing APIs service and Push Notification service etc. .

  • frontend web app Implemented by reactjs, providing intereactive user interface for administrator or normal user.

  • mobile app Another way to browse activity and report by real-time through Push Notification Server, supporting iOS and Android mobile.

  • diaper(custom flume HttpSink to monitor exception) Aggregating exception log data by Taildir Source of Apache Flume, and sending log data as a POST body to BackendServer by HTTP Sink of Apache Flume.

architecture

Quick Start with a demo

  1. Prerequisite
  • 64bit OS, Linux/Unix/Mac
  • 64bit JDK 1.8+
  • Available network connect
  1. Download demo

Download demo

  • copy demo.tar.gz to a directory and tar -zxvf demo.tar.gz
  • run java -jar ./generror-1.0-SNAPSHOT-jar-with-dependencies.jar
  • cd apache-flume-1.8.0-bin/bin, then run ./diaper.h
  1. Sign in TryCatch

Developing custom components

  • diaper-flume-conf.properties

A config file that watch the specified files, and tail them in nearly real-time once detected new lines appended to the each files. Please link Apache Flume official doc http://flume.apache.org/releases/content/1.9.0/FlumeUserGuide.html#taildir-source You may care about agent.sources.loggerSource.filegroups to config the logfiles wathed.

  • Manage the demo project

access token Copy content in the 3 step, then you need to write the value to your application.

  • Your backend application

Assuming the jar of demo is your backend application, you have to do is adding a json string to your log content, the json string contains ttf_access_token and ttf_log_timestamp properties.
ttf_access_token is the value copied in the part of "Manage the demo project",
ttf_log_timestamp is the number of milliseconds of now date. The source code is in demo source code

License

Trycatch is MIT licensed

trycatch's People

Contributors

danceyoung avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 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.