REGISTRATION
IMPORTANT DATES
Click here to know the important dates.
Screening Task: Spoken Tutorial Event Logs
Create an Event Logging system that captures and logs all request that comes to the server. Events are basically web server HTTP requests made by users.
1. Create a Basic Django view that renders a home page. The home page can be dynamically generated or it can be just a static page.
2. Create a Django Middleware that captures any request that comes to Home page URL and log the request in a JSON file.
The log file should contain
An example log JSON object will look something like this.
{
"path_info": "/homepage",
"browser_info": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:70.0) Gecko/20100101 Firefox/70.0",
"request_data": {},
"method": "GET",
"event_name": "home_page",
"visited_by": "spokenuser",
"location": "Mumbai",
"ipaddress": "10.129.36.24",
"date": "25/11/2019"
}
3. Create a simple visualization page that shows the total number of Home page loads. The page should provide a facility to filter the requests based on per day/week/year or location if available.
Please Note: Understanding Django request and response cycle is very important for completing this task.
Python, Django.
Submission:
Following criteria will be considered while evaluating the tasks:
Once your submission is shortlisted, we will administer a Python test which you will need to clear. Only then will you be selected for the fellowship with us.
6-weeks Fellowship task:
Create a Spoken Tutorial Analytics System for capturing and visualizing log events. The system should be able to analyse and create meaningful insights from the events.
Create a system-level visualization dashboard that shows the number of page loads for each page, the number of requests made by both authenticated and anonymous users, etc.
A System-level alert notification if there is high traffic on certain pages in the system.
Create an admin and user level visualization dashboard for Spoken Tutorial system that shows useful user activities and insights. The system should be able to integrate with an open-source log pipeline, a search engine and an analytics system.
A Django Log Middleware, Elastic Stack(Elasticsearch, Logstash, Kibana) and Apache Kafka will be used for implementing the system.
Technologies to use: Python, Django.