Dexter Monitor
Dexter Monitor is a dashboard for monitoring the status of defects and users for all active Dexter Servers.
You need to download 'dexter-monitor' file to install dexter monitor.
And be sure to use the 'dexter-server'. You can download in "Dexter Download Page"
1.What you can do
Check Overview for Current installation/defect status (on real-time)
Check Dexter-Server Status [ Active / Inactive ]
Check Weekly Report ( 'dexter-monitor' creates a Snapshot for all ACTIVE dexter server automatically )
2.How to use
2.1 Wrtie config.json file in dexter-monitor
{ "version":"#.#.#", "appName":"Dexter Monitor", "description":"This program will monitor and control servers", "serverStatusCheckInterval":5, "serverDetailedStatusCheckInterval":5, "serverRequestTimeout":5, "projectStatusRefreshInterval":60, "snapshotDayOfWeek":2, "email":{ "type":"api", "apiUrl":"http://dexter_email:5003/api/v1/email", "defaultSenderEmail":"min.ho.kim@samsung.com", "defaultSenderName":"MinHo Kim" }, "database":{ "host":"Database host Name or IP", "port": "Database Port Number", "user":"Database User ID", "password":"Database User Password", "name":"Database Name" }, "userInfoUrl":"User info URL" }
snapshotDayOfWeek : It creates a snapshot for all active servers at midnight on the specified day of week.
Default value(
2
) means midnight Tuesday(0
: Sunday, ... ,6
: Saturday)
- email : It sends a email when there is a dexter-server error.But if you are Non-Samsung user, you should be implemented by yourself.
- type : [ "api" , "smtp" ] : Should be set properly in your environment(SMTP or WebService)
- please refer to "dexter-monitor/test/back-end/test-mailing.js"
- type : [ "api" , "smtp" ] : Should be set properly in your environment(SMTP or WebService)
- database : The Weekly defect, account status is saved on this databse. You need to check "2.2 Create Dexter Monitor Database".
- host: Database host ip
- port : Database host port
- user : Database user id
- password : Database user password.
- name : Database user
- userInfoUrl : It returns a User Information. But if you are Non-Samsung user, you should be implemented by yourself.
This URL should get
userId
as a query parameter and return the user information like the format belowIf your
userInfoUrl
is"userInfoUrl":"http://yourUserInfoUrl?userId="
and you call
, then the URL should return
[{"userid":"sangwoo7.lee", "cn":"Sangwoo Lee", "department":"Dexter Team", "title":"Software engineer", "employeenumber":"1234"}]
2.2 Create Dexter Monitor Database
- you need to download ddl script : 'dexter-monitor-db.sql' file using the mysql command line tool as follows.
- Before using the following commands, you have to decide a databse user name and a password that will be used at dexter-monitor. ( : use for save Weekly Status, save Weekly Status Summary)
Enter password: // <== enter your mysql password mysql> create database Dexter_Weekly_Report; // <== choose any database name, But you must set same name on "database":"name" in'config.json' Query OK, 1 row affected (0.00 sec) mysql> use Dexter_Weekly_Report; Database changed mysql> create user 'dexter-user' identified by 'mypassword'; // <== choose any password, If you already have mysql account, you do not need to create new user. Query OK, 0 rows affected (0.01 sec) mysql> grant all on Dexter_Weekly_Report.* to 'dexter-user'@'localhost' identified by 'mypassword'; Query OK, 0 rows affected (0.00 sec) mysql> source %DOWNLOAD_PATH%\dexter-monitor-db.sql // <== example : source D:\DexterSQL\dexter-monitor-db.sql Query OK, 0 rows affected (0.04 sec) Query OK, 0 rows affected (0.05 sec) Query OK, 0 rows affected (0.04 sec) Query OK, 0 rows affected (0.05 sec)
- This is the sql for 'dexter-monitor' database. you can use the command Line. ex) "source dexter-monitor-db.sql'
table Name description DexterUserList If SE want to check Dexter installation ratio at the real time, SE admin must be input the all of userId. dexter-monitor automatically search dexter users from all ACTIVE dexter-server and then mark 'Y' at dexterYn column. - reason/ ide/ language column : your Dexter installation being unnecessary developers. ProjectInfo If dexter-server had created by SE, you must add project information in this table. This information is required to determine ACTIVE(available) dexter-server service. If you forget to save the project information in this table, you don't get dexter weekly status. WeeklyStatus This table includes weekly status reports and the summary data by automatically.
If you set value(2) in snapshoDayOfWeek of config.json file, it will be create a snapshot data every Tuesday.
WeeklyStatusSummary
2.3 Run Dexter-monitor
- To run Dexter Monitor, you need to run following command in the dexter-monitor folder.
$> node app.js -p=13301
- -p = port_number, You can change the Dexter monitor port number. This port is used in the dexter-monitor web page.
3.Verify
- Open a web browser, and then input the following URL : http://your_host:port_number