Skip to content

GSoC2014 Proposal: Mobile log access through AMQP exchange (rray)

Rohan Rangray edited this page Mar 24, 2014 · 3 revisions

Mobile log access

syslog-ng now has built-in support to send messages to an AMQP server, but there are few tools out there that make heavy use of this feature. This project aims implement a client android app for subscribing to these log messages and viewing them on the go.

Benefits

The project carries with it the inherent benefit of enabling users to read logs on the go. This can be essential for when one only has access to mobile phones, since there is no good interface for reading logs from specific servers on mobiles yet.

Overall, a major focus of the project will be the convenience it brings to the users and developers alike who wish to implement remote-viewing of logs.

Aims:

Configure an AMQP server and set it up to store logs published by the syslog-ng instance and broadcast them to subscribers.

Make an android client app for reading the logs from the AMQP server. These will act as the subscribers to the AMQP exchange.

Implementation:

The plan right now is to use RabbitMQ for setting up the AMQP exchange and making the app android app using the standard android development kit. The android app will have features to distinguish logs based on priority levels and other criteria like word filters.

Timeline:

2-3 to absorb the syslog-ng codebase and get a good grasp of how it interacts with an AMQP server.

1 week to get the server to work ( with authorization and encryption support )

2-3 weeks to create the android app with encryption and authorization support.

2-3 weeks to implement the GUI for the app.

2 weeks spent reviewing/testing/cleaning the code.

About me:

I'm a CS major at University of California, San Diego. I've been using and following linux since 2012, and have been programming since 2011. I have the most experience in programming in C++ and C, but I picked up Java over the past few months and am now fairly efficient at it. I also have experience using PHP and Python. I was first exposed to syslog-ng when I set it up on a FreeBSD machine that I was administrating. As for the syslog-ng codebase, apart from the time spent reviewing the code while applying for the GSoC candidature, this summer will be my first full exposure to it. My first encounter with remote logging was at the Intuit Hackathon at my university where I wrote a vanilla tls-encrypted daemon/client pair to allow users to read logs on their local machines. This project had severe limitations in that it wasn't efficient and wasn't user-friendly. With this proposal, I aim to fulfill all the short-comings of my earlier project and explore in-depth the possibilities of remote log-viewing that I thought of at that hackathon.

Clone this wiki locally