-
Notifications
You must be signed in to change notification settings - Fork 466
GSoC 2018 proposal: Odbc destination driver (yashcodes)
- __
- Name: Yashvardhan sharma
- Time Zone: IST (UTC+5:30)
- Github id: yashcodes
- Email: sharmayashvardhan6@gmail.com
Hello, I am Yashvardhan sharma a second year undergraduate student at IIT Kharagpur, India. I'm pursuing a 4 Yr.B.tech degree in Civil engineering. I am use Ubuntu 16.04 LTS as my regular operating system with sublimetext3 as my primary text editor. I am proficient in C/C++ programming languages.
The syslog-ng application is a flexible and highly scalable system logging application that is ideal for creating centralized and trusted logging solutions. The goal of the project is to connect to database servers that are directly not supported by syslog-ng. Not only the traditional SQL databases have ODBC drivers, some of the BigData players also have.
Till now syslog-ng is using libdbi driver to access different databases which limit its reach to only few numbers of databases .So, here’s the great idea of this project came to enable syslog-ng to access not only the wide range of traditional SQL databases but also support some big data players which have odbc driver by implementing syslog-ng driver that will send log messages to a database via odbc interface by using unixodbc.
In end of the project three major tasks should be accomplished. A new module should be formed to implement syslog-ng driver which will send log messages to a destination from where it will take care to send log messages to databases via odbc interface by using unixodbc. 2. Write performance tests and there results for odbc vs libdbi. 3.Make a proper debian package for the new driver.
Good experience with C. Handy with version control systems. Familiar with syslog-ng. Should have enough familiarity with SQL and sql databases . Basic familiarity with odbc is also required.
I was looking for a interesting and fairly large project in my comfort zone which is C because of my good experience with it. Plus I have a quite good experience with sql which interests me towards this project even more. The learning opportunities that were listed in the ideas page was the main reason that made me committed with this project this much. And I must say the main idea ( automatic log data management which is already proved very well for programmers and developers )behind syslog-ng is so great and I would feel lucky if I could enhance its capability even more.
from here we start!!
- Get more familiar with syslog-ng and explore its features.(Still doing)
- Try to understand and clear doubts mainly regarding part of codebase which enables syslog-ng to access databases like codebase of “afsql” and “afprog” modules to get a better idea to write a syslog-ng module .(still doing)
- Increase familiarity with odbc.
- Continue to understand the codebase.
- Increase community bonding.
- Install unixodbc.
From here <coding.fun_part> begins (fingers crossed..!!)
- Discuss project with mentor.
- Plan to write a module forming a destination(named as odbc destination) which will collect log messages and will also take care to send them to proper database by sending proper parameters to unixodbc driver manager which will load and unload proper odbc driver through which it will send messages to the concerned database.
- Submit first evaluation.
- Start making the module.
- Continue making module.
- Continue discussing with mentor.
Time to do testing,finding bugs and fix them..!! (let shut the bug up)
- Take reviews from mentor.
- Write test cases.
- Fix bugs
- Submit second evaluation
- Test the code in every possible way.
Wait. not done yet..!!
Now compare performances of ODBC and libdbi and make debian package.
Make a proper documentation to describe test cases and their results for performance measurement of odbc vs libdbi.
In last..!!
Make debian package for the new odbc driver. Make proper documentation and user guide. Make final submission.
Have you participated previously in GSoC? When? Under which project? No, I have not participated in GSoC before. This is the first time I am participating in GSoC. Are you also applying to other projects? No, I am not applying for any other project in any other organisation.
I have no commitments from 4th May 2017. My university Summer holidays will start from 1st May. My classes for the new semester will resume on 17th July 2017 . Due to very less academic load during the start of the semester, I will easily be able to dedicate around 6 hours everyday for the last 4 weeks of the coding period.