... | @@ -5,6 +5,27 @@ _Following blog posts are mirrored from [DIAL's blog](https://hub.osc.dial.commu |
... | @@ -5,6 +5,27 @@ _Following blog posts are mirrored from [DIAL's blog](https://hub.osc.dial.commu |
|
[[_TOC_]]
|
|
[[_TOC_]]
|
|
|
|
|
|
# July 2020
|
|
# July 2020
|
|
|
|
## July 10
|
|
|
|
This week I spent a lot of time working on the dashboard to add new graphs and features. That said, I needed to add a few new features in the backend to support the updates in the dashboard. First, I used the freely available [GeoLite2](https://hub.osc.dial.community/t/weekly-gsoc-standups-for-2020-w28/1770/12) database to get the physical locations (country and continent) of the exit relays and I recorded that information in the database.
|
|
|
|
|
|
|
|
Next, I used the geolocation information to create the graphs for understanding how the CAPTCHA faced exit relays are distributed around the world as seen below. An overwhelming majority of the CAPTCHA faced relays are in the US and Germany but it was expected since most of the exit relays are also located in these two countries.
|
|
|
|
|
|
|
|
![Screen_Shot_2020-07-10_at_9.23.02_PM](uploads/4e74a0eb3e3eab75953c98fcbb8541c4/Screen_Shot_2020-07-10_at_9.23.02_PM.png)
|
|
|
|
|
|
|
|
Later, I worked on creating the “Relay Search” section as shown below. It aims to show the measurements, CAPTCHA rates, and other statistics for a given exit relay.
|
|
|
|
|
|
|
|
![Screen_Shot_2020-07-10_at_9.24.26_PM](uploads/b7f8a9a433e8b983c524743cf71da140/Screen_Shot_2020-07-10_at_9.24.26_PM.png)
|
|
|
|
|
|
|
|
Next, I added a “JavaScript Required” warning as shown below. It pops up if JavaScript is disabled in the web browser. I used a few JavaScript libraries to create the graphs and JavaScript is required to see them. That said, I host all of the JavaScript code on my server. So, there is no third-party server interaction needed while visiting the dashboard.
|
|
|
|
|
|
|
|
![Screen_Shot_2020-07-10_at_9.24.01_PM](uploads/f482b36b9b5cd01b59d4e186b486ddb5/Screen_Shot_2020-07-10_at_9.24.01_PM.png)
|
|
|
|
|
|
|
|
|
|
|
|
Finally, I created an onion service for the dashboard and added the meta-tag for advertising the onion address of the dashboard. Now, the dashboard can also be reached through http://5yalu72ryu4xu457kmcze5kxb4on6xh2vkom35jnu4s3respg7hsguqd.onion/
|
|
|
|
|
|
|
|
![Screen_Shot_2020-07-10_at_9.23.41_PM](uploads/06e65099b965c5896f4e01d943361bc3/Screen_Shot_2020-07-10_at_9.23.41_PM.png)
|
|
|
|
|
|
|
|
|
|
## July 3
|
|
## July 3
|
|
This week I worked on solving the memory leak problem. I found the root cause and stopped the leak. I was using a timeout function while fetching the pages. It turns out the timeout value I used was shorter than it is supposed to be, and the timeout function wasn't invoking the right signals to properly kill the instances of the browser. So, I increased the timeout and added the right calls to shut down the browser instances properly. This solved the memory leak issue.
|
|
This week I worked on solving the memory leak problem. I found the root cause and stopped the leak. I was using a timeout function while fetching the pages. It turns out the timeout value I used was shorter than it is supposed to be, and the timeout function wasn't invoking the right signals to properly kill the instances of the browser. So, I increased the timeout and added the right calls to shut down the browser instances properly. This solved the memory leak issue.
|
|
|
|
|
... | | ... | |