Skip to content

GSoC2015 Proposal: syslog ng configuration editor using Qt (dkithmal)

Damitha Kithmal edited this page Mar 26, 2015 · 2 revisions

Goal of the Project:

Goal of this project is to develop a user friendly GUI for creating syslog-ng configuration files which will enable users to easily create configuration files by dragging and dropping elements.

Abstract

Syslog-ng is a flexible, reliable, high speed event log management system which maintain large amount of log files. Though the system is dealing with larger set of log files current methodology used in creating a syslog-ng configuration file needed the proper understandability in its format and syntaxes. Existing methodology of managing configuration files cannot be considered as user friendly for the user who manages larger number of log files. Therefore this project is to create an application where user can drag and drop the elements as they wish and create a configuration file automatically based on the selected elements.

Benefits to the community:

Using this GUI, user can easily create syslog-ng configuration files. Syslog-ng has powerful configuration language therefore its bit difficult to create configuration file manually with correct format with correct syntax. This project help user to create configuration file very easily using drag and drop technique so after drag and drop elements user can edit properties of the element easily. Then the user can automatically generate the configuration file. This will be a very useful feature to the syslog-ng users.

Benefits to me:

I’m working on my level 4 project in complex event processing which needs to collect data form various sources. Syslog-ng will be used for managing log files. This feature to create Syslog-ng configuration files will be a great help for me myself. Also I like to improve my knowledge on syslog-ng and also I enjoy developing applications with Qt (which I am going to use to develop the tool) so this project is very good opportunity to enhance my experience and knowledge.

Timeline:

April 27 – May 10: Community Bonding Period. Get a clear idea about each and every element in the configuration file and clarify my idea regarding the “yaml” file. Design the user interfaces and finalize the designed user interfaces by communication with mentors

May 11 – May 20: Create parser to “yaml” file .Create the parser to “yaml” file referring input “yaml” file and create Xml structure or proper structure inside the program to further referring

May 21 – June 2: Create configuration element panel by referring yaml parser model create configuration element panel with Drag and droppable icons

June 3 – June 25: Developing the configuration editor panel. Main and most difficult component in the project is to create drag and droppable elements and create configuration editor panel.

Mid Term evaluation

July 3 - July 12: Develop the property edit panel. When user click on the element in the configuration editor panel, system should be able to give the property edit panel to user in order to edit the properties of configuration elements according to their preference

July 13 –July 25: Generate configuration file according to User dragged elements and their elements properties.

July 26 – August 10: Styling and testing. Do some Qt styling and make user attractive user interfaces and Test the application with test cases which were written in Qtestlib.

August 11-August 20: Finalize application and create documentations.

Final evaluation

About Me:

I’m a final year undergraduate of University of Moratuwa, Sri Lanka. I’m familiar with C, C++, Qt, JAVA (Hibernate, Spring, Struts). I have more than 2 year experience of working with Qt and I have 11 months (7months internship and 4 months consultancy contract) of professional experience on software development with Qt at Millennium Information Technologies (which is the biggest company which uses C++ as the main development language in Sri Lanka). Also I have experience in working with Squish Qt GUI testing tool. I love to work with open source community and have contributed to OpenMRS from Nov. 2013. Following links are about my contribution to OpenMRS,

https://issues.openmrs.org/browse/TRUNK-4146?jql=assignee%20in%20(dkithmal)

Projects completed with the use of Qt:

Bindu project

This application was developed to compete in Motorola innovation championship 2013. This application mainly developed to create a proper interaction between teacher and student in the classroom. This is mainly focus on monitoring the student performance and homework by teacher. With this system teacher can create homework and tasks which are assessments to students and they can do those tasks and get evaluated by teachers.

Translation application

This application is simply to read Qt translation file and (.ts ) and can translate to any other language using Google translator

Qt media project

This project build based on Qt on top of raspberry pi. This is capable of managing more raspberry pis and each raspberry pi connect to a display and each display show slide show of images and the management application capable of managing those display slide shows.

GPA calculator

A simple application for university to get the GPAs calculated easily.

Sudoku puzzle solver

This is developed for personal enthusiastic to familiar with Qt and GUIs of this was developed with Qt.

File transfer application

This is build based on Qt sockets which is capable of file transferring with in local network computers

github: https://github.com/dkithmal

Contact information:

Name: Damitha Kithmal.

Email address: dkithmalfit@gmail.com

Phone No: +94 711086804

Skype: dkithmal

IRC: dkithmal

Gtalk: dkithmalfit@gmail.com

Clone this wiki locally