The Monthly Service Report (MSR) is a combination of various scripts to obtain and mash network traffic availability and utilisation data. There is a front-end GUI based on Java Server Pages (JSP)

Every month the data is prepared on test-msr.geant.net (83.97.92.151) and stored within a MySQL database on the same machine. The databases that the MSR uses are called reports and otrs. The MySQL user that is used to access the database is reportsUser. The password is stored within KeyPass

At the end of the process, the data is exported using MySQL Workbench and copied over to the production server prod-msr.geant.net (83.97.93.7). In addition, the graphs and topology images are also copied across from the test to the production server.

The URL for the test server is http://test-msr.geant.net:8888/msr/

The URL for the production server is either http://prod-msr.geant.net:8888/msr or https://tools.geant.net/portal/links/msr/ (You will need to have tools portal access for this and be a member of the TP_MSR Active Directory Group


The JSP scripts are stored in the  /var/lib/tomcat6/webapps/msr/ file on the server. This scripts includes other scripts that are stored in the  /var/lib/tomcat6/webapps/msr/includes directoryTwo of the important include files are getGlobal.jsp and getSession.jsp which set some Global Variables that are used within the application.


*** Talk about differences in getSession.jsp file wrt user roles

The below scripts rely on a couple of includes:

includes/getSession.jsp

includes/getGlobal.jsp


Click link in ad_roll_report.jsp


Goes to http://test-msr.geant.net:8888/msr/ad_etl_confirm_new.jsp?DATA=Roll%20Report%20Period

After confirmation the browser is redirected to ad_etl_status_new.jsp?DATA=Roll%20Report%20Period

This page retrieves the month and year of the latest published MSR provided by the getSession.jsp script, rolls the month and year values as appropriate and initialises a few other variables

Updates the only record in the msr_control table with the new month and year values

Adds new entries into the following tables:

msr_reports

msr_reports_gn3

Updates the following table

msr_control

Redirects to the root of the application

If there is an extra period/month rolled (like rolling a month ahead) you need to do the below:

  1. Delete the month record from "msr_reports" table
  2. Delete the month record from "msr_reports_gn3" table
  3. update the month record in "msr_contol " table

If you examine the /var/lib/tomcat6/webapps/msr/WEB-INF/web.xml file on the server, you will notice that the MSR also uses three Java Servlets:

GraphGenerator (net.dante.msr.graphs.GraphGenerator) - used by the Graph Generation page: http://test-msr.geant.net:8888/msr/ad_graphs.jsp in the Administration section

ExcelExport (net.dante.msr.CSVExport) - used by each page that has the Excel Export icon in it

TrendAnalysis (net.dante.msr.graphs.TrendAnalysis) - used by Individual graph pages: http://test-msr.geant.net:8888/msr/ms_nren_ip_util.jsp and http://test-msr.geant.net:8888/msr/ms_nren_int_util.jsp in the Trend Analysis section 

*** Source Code Repository information

You need to clone 4 repositories to your local development environment:

https://gitlab.geant.net/live-projects/webapps-msr ### JSP pages that contain MSR GUI interface

https://gitlab.geant.net/msr-automation/msrgenerator

https://gitlab.geant.net/msr-automation/cacti-utilisation

Graphshttps://gitlab.geant.net/live-projects/msr/-/tree/master/src/main/java/net/dante/msr ### These are the Java files responsible for graphs. Won't be changed frequently.

  • No labels