Code Monkey home page Code Monkey logo

segment-aop's Introduction

Segment AOP

This template project is an attempt to demonstrate annotation based AOP in a minimalist way using vanilla AspectJ. It uses AspectJ runtime to weave the aspects in a post-compile fashion and doesn't require Spring or a similar Java library.

Basic Idea

Scenario: There is a new feature being added to our product and we want to analyze the response of our users.

Usage: This new feature can be used via a REST endpoint

Tracking: We want to track activity of requests hitting this endpoint. We have different types of users, for example: Basic, Advanced, Premium, etc. and we want to know which user segment is more responsive to this newly introduced feature. We will use Segment.io, a platform that collects user events from mobile and web applications to analyze customer behavior to achieve this.

Application

To run this app end-to-end, you will need an account on Segment.io. Once you have that, set an environment variable SEGMENT_WRITE_KEY with value as your Segment write key and run the gradle task as follows. You should be able to see the events triggered on your Segment dashboard.

  • UNIX

    ./gradlew run
  • Windows

    gradlew.bat run

segment-aop's People

Contributors

jaymindesai avatar

Stargazers

 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.