GSoC2015 Proposal: syslog ng server monitoring with mobile app (Krishna41)
Syslog-ng is an open source implementation of Syslog which is a flexible, fast and reliable log management system. As the world is moving towards handhelds, it would be very convenient to monitor the status of servers using the same. The goal of this project is to have a mobile application through which administrators can track their servers and perform various actions like reloading, getting statistics, classifying log messages, filtering the log messages based on criteria and so on.
System administrators cannot be monitoring the servers all the time. By implementing this project and creating application, we can enable the admins to monitor the servers not only all the time but from anywhere in the world. Thus tracking the server logs would become very convenient for the admins. With increasing usage of mobile devices it would be very thoughtful to have an application for monitoring and the community and users around the world will be highly benefitted with this application.
Android, iOS and Windows phone account for more than ~98% of the total mobile devices being used. I would like to develop the mobile application for these 3 platforms.
Developing secure communication which opens an SSL control socket. Providing ability to visualise the structured log data received.
To complete the project successfully I would like to approach it in a systematic way. First I would like to implement the project for Android. Then I would use the same logic to extend it to the other operating systems - Windows and iOS.
- Eclipse - kepler with Android SDK
- xCode version 6.2
Both will be developed on Mac OS X 10.10.2
- Visual Studio on Windows 7 ultimate
- Read documentation related to the project.
- Gain in-depth knowledge about secure transport.
- Read about various UI development techniques.
- Development of Basic Interface for all the 3 platforms.
- Cleaning the user interface for Android Application.
- Developing the Connection establishment, secure transport between the android app and the server.
- Adding functionalities - Adding several instances of Syslog-ng, validation of certificates.
- Exploring and implementing various ways to visualise the data that will be received, Status of the server.
- Exporting the first working version of the project.
- Developing unit tests
- Extending the developed logic to Windows and iOS platforms.
- Implementing the application for Windows and iOS platforms.
- Dead code elimination, hoisting, making the code cleaner.
- Decrease code duplication.
- Making code self explanatory.
- Writing user interface test cases for all platforms developed.
- Testing the Applications.
- Fixing bugs and applying patches.
- Performance tweaking.
- Code coverage .
- Final Documentation which consists of how to use the application and other technical details
I would like to take the project beyond GSoC by being an active member of the community by enhancing the code developed during these phases and maintain the code. I also intend to extend the project to other linux based mobile operating systems like Firefox OS and Tizen OS. Also bringing an unified user experience across platforms.
I am a Graduate student at National University of Singapore, specializing in computer science. I did my undergraduate coursework in the field of Computer Science and Engineering at Anna University, India. After graduating, I worked for Verizon Inc. as a software engineer where I developed a product which was basically a Tablet application, developed using C# .net. I then joined a startup which worked on solving problems in recommendation engines in marketplace. There I developed a social network application using java and Neo4j.
I have experience in C, Java, C# and Python. I have developed various android applications as a hobby and published it in Google Play store. You can find them here :
https://play.google.com/store/apps/developer?id=Spaghetti%20Stack&hl=en
During my undergraduate studies, I participated in The Great Mind Challenge, a nation wide software project contest conducted by IBM Academic Initiative. Our project was selected as one of the Top 20 Projects in the country where approximately more than 150,000 students participated.
As a part of my undergraduate course I worked in the field of Network Security. Developed a Flexible deterministic packet marking scheme. Which will be used to find the real source of the attacking packets in which the IP Address in the headers are spoofed .
I am a RedHat Certified Engineer and have been a Linux user for long. I am passionate about programming and I aim to contribute to an open source project which can have a deeper impact in real world.
Advanced : C, Java
Average : C#
Beginner : Python, Objective C, R Programming
Here is the solution to the simple task given by Zoltan
https://github.com/Krishna41/opensslconnector
Name : Krishna Kannan
Email : k.krish@yahoo.com, krish@comp.nus.edu.sg, krishna.kay@gmail.com.
Course : Master of Computing.
University : National University of Singapore - School of Computing.
Phone : +6583039960, +919843631242