Skip to content

Commit 0df3af6

Browse files
committed
anonymization
1 parent 6b6cc7a commit 0df3af6

11 files changed

+29
-13
lines changed

architecture.tex

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,9 +63,12 @@ \section{Architecture}
6363
\label{fig:sep}
6464
\end{figure}
6565

66-
As discussed in the introductory section, in previous work~\cite{vogel2017low} we introduced \tool, a drop-in Python library that allows developers to monitor their Flask-based Python web applications with minimal effort.
66+
As discussed in the introductory section, in previous work \withheld we introduced \tool, a drop-in Python library that allows developers to monitor their Flask-based Python web applications with minimal effort.
6767
%
68-
The \tool is implemented for Python 3.6 and is available on the Python Package Index repository\footnote{\url{https://pypi.python.org/pypi/flask-monitoring-dashboard/1.8}} from where it can be installed by running \install from the command line.
68+
The \tool is implemented for Python 3.6 and is available on the Python Package Index repository
69+
% \footnote{\url{https://pypi.python.org/pypi/flask-monitoring-dashboard/1.8}}
70+
\footnote{\url{https://pypi.python.org/pypi/[\witheld]}}
71+
from where it can be installed by running \install from the command line.
6972
%
7073
The source code of the \tool is published under a permissive MIT license and is available on GitHub\footnote{\url{https://github.com/flask-dashboard}}.
7174

evolution.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ \subsection*{Evolving Grouped Performance}
6868

6969
\begin{figure}[h!]
7070
\centering
71-
\includegraphics[width=0.77\linewidth]{time_per_user_per_version}
71+
\includegraphics[width=\linewidth]{time_per_user_per_version}
7272
\caption{This perspective shows that the evolution of response times for individual users (horizontal lines) across versions (the x-axis) for a given endpoint}
7373
\label{fig:tuv}
7474
\end{figure}

img/selecting_endpoints.png

-131 KB
Loading

img/selecting_endpoints_old.png

300 KB
Loading

introductory.tex

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,9 @@ \section{Case Study}
7272
\label{sec:api}
7373
\label{sec:case}
7474

75-
\zee\footnote{\url{https://github.com/zeeguu-ecosystem/}} is a platform and an ecosystem of applications for accelerating vocabulary acquisition in a foreign language \cite{Lungu16}.
75+
\zee
76+
% \footnote{\url{https://github.com/zeeguu-ecosystem/}}
77+
is a platform and an ecosystem of applications for accelerating vocabulary acquisition in a foreign language \cite{lungu18-chi}.
7678
%
7779
The architecture of the ecosystem has at its core an API and a series of ecosystem applications that together offer to a learner three main inter-dependent features:
7880

loc1.tex

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99

1010
The \tool is designed to take advantage of the fact that it runs in the same context as the web application it monitors, and that the monitored API already has a web presence. It thus simply makes available one extra endpoint (i.e. \code{/dashboard}) at the same address as the API, which serves the interactive application presented in the remainder of this paper.
1111

12-
A dashboard can be attached to an already existing Flask application with a single line of code~\cite{vogel2017low} as the following snippet shows\footnote{We do not count the import statement that enables that line.}:
12+
A dashboard can be attached to an already existing Flask application with a single line of code \citationwithheld as the following snippet shows\footnote{We do not count the import statement that enables that line.}:
1313

1414

1515
\begin{lstlisting}[style=custompython]
@@ -23,13 +23,11 @@
2323

2424
During binding, the \tool will search for all endpoints defined in the target application and make them available in the dashboard in an interactive configuration panel (\Fref{fig:sep}). The panel presents all the automatically discovered endpoints and lets the user select the ones that should be monitored (the checkboxes in the last column). When the user enables the monitoring of an endpoint a function wrapper is added to the implementation of that endpoint (which is a function in Flask). The information is also saved in a database such that it is persistent across application restarts.
2525

26-
\va{\Fref{fig:sep} needs to be updated --- it still has 2017 dates}
27-
2826
% In order to monitor an endpoint, the \tool creates a function wrapper for the API function that corresponds to the endpoint. This way, the wrapper will be executed whenever that API call is made before the actual function is called. The wrapper contains the code that takes care of monitoring an endpoint.
2927

3028
\begin{figure}[h]
3129
\centering
32-
\includegraphics[width=0.8\linewidth]{selecting_endpoints.png}
30+
\includegraphics[width=\linewidth]{selecting_endpoints.png}
3331
\caption{Once connected to an API the Dashboard presents the endpoints that are available for monitoring}
3432
\label{fig:sep}
3533
\end{figure}

overhead.tex

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
\section{Overhead of the \tool}
55
\label{sec:overhead}
66

7-
To measure the performance overhead of the \tool, we have implemented an automated benchmarking system. It is open source and available online and can be tested by the reader. \va{@Mircea: Don't forget to add link} The benchmark downloads the latest version of the \zee API and installs it in a Docker container. Then it calls several selected endpoints for 500 times each, tracking the response times. The endpoints are called in three different configurations:
7+
To measure the performance overhead of the \tool, we have implemented an automated benchmarking system. It is open source and available online and can be tested by the reader\footnote{\em [The link will be added after deanonymization]}. The benchmark downloads the latest version of the \zee API and installs it in a Docker container. Then it calls several selected endpoints for 500 times each, tracking the response times. The endpoints are called in three different configurations:
88

99
\begin{enumerate}
1010
\item With no dashboard installed.

paper.bib

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,16 @@ @inproceedings{vogel2017low
1717
}
1818

1919

20+
@inproceedings{lungu18-chi,
21+
author={Mircea F. Lungu and Dan Chirtoaca and Martin Avagyan and Luc van den Brand},
22+
title = {{As We May Study: Towards the Web as a Personalized Language Textbook}},
23+
date = {2017},
24+
booktitle ={{Proceedings of CHI'18: ACM Conference on Human Factors in Computing Systems}},
25+
pages = {(to appear)},
26+
publisher ={ACM},
27+
}
28+
29+
2030
# Related Work Papers
2131
2232

testing.tex

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
%!TEX root=paper.tex
22

33

4-
4+
\vspace{1cm}
55
\section{Performance Triangulation With Regression Monitoring}
66
\label{sec:testing}
77

@@ -31,7 +31,7 @@
3131

3232
\begin{figure}[h!]
3333
\centering
34-
\includegraphics[width=0.65\columnwidth]{travis_builds-bw}
34+
\includegraphics[width=0.85\columnwidth]{travis_builds-bw}
3535
\caption{Response times in 5 consequent Travis builds}
3636
\label{fig:builds}
3737
\end{figure}

useful_defines.tex

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,9 @@
3030
\newcommand{\activeUserCount}{two hundred\xspace}
3131
\newcommand{\code}[1]{\texttt{#1}\xspace}
3232
\newcommand{\perspective}[1]{{\bf {\small {\texttt{#1}}\xspace}}}
33+
\newcommand{\withheld}{withheld due to double blind}
34+
\newcommand{\citationwithheld}{{\em [citation withheld due to double blind]}}
35+
3336

3437
\newcommand{\lesson}[1]{{\bf {\small {\texttt{Lesson: }}\xspace}}: #1}
3538

utilization.tex

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ \subsection{Utilization}
1212

1313
\begin{figure}[h!]
1414
\centering
15-
\includegraphics[width=0.8\linewidth]{utilization-table}
15+
\includegraphics[width=.97\linewidth]{utilization-table}
1616
\caption{The API Overview presents synthetic endpoint utilization information}
1717
\label{fig:basicest}
1818
\end{figure}
@@ -38,7 +38,7 @@ \subsection{Utilization}
3838
\end{itemize}
3939

4040

41-
\niceseparator
41+
% \niceseparator
4242

4343

4444
For a more detailed view of utilization evolution, \Fref{fig:aeu} shows the \perspective{Daily API Utilization} perspective on API utilization that \tool provides: a stacked bar chart of the number of hits to various endpoints grouped by day\footnote{Endpoint colors are the same in different views}. \Fref{fig:aeu} in particular shows a peak utilization, on June 28, 2017 when the API had more than 12.000 hits\footnote{Turns out that the high school students that were using the system for their French-learning class had a deadline on that date}.

0 commit comments

Comments
 (0)