You are on page 1of 21

MEGAMON MONITORING CONTROL 1 (21)

PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto

10.11.2011

0.6-0

MEGAMON-MONITORING CONTROL INTERFACE (Telnet based)


Document Information
Owner:
Scope:
Originator:
Document version:
Status:
Location:

Petri Aalto
0.6-0
Draft

Approved By
Johannes Peukalo

Draft

MEGAMON MONITORING CONTROL 2 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto

10.11.2011

0.6-0

Draft

TABLE OF CONTENTS
1. INTRODUCTION................................................................................................................................................4
1.1 PURPOSE OF THE DOCUMENT........................................................................................................................................4
1.2 TERMS, ABBREVIATIONS AND DEFINITIONS.....................................................................................................................4
2. PROCEDURE DESCRIPTION...........................................................................................................................5
2.1 OPENING THE CONNECTION.........................................................................................................................................5
2.1.1 SUCCESSFUL OPERATION.............................................................................................................................................5
2.1.2 UNSUCCESSFUL OPERATION.........................................................................................................................................5
2.2 SETTING NETWORK ELEMENT (SETNET)........................................................................................................................6
2.2.1 UNSUCCESSFUL OPERATION.........................................................................................................................................6
2.3 DELETING NETWORK ELEMENT (DELNET)....................................................................................................................6
2.3.1 SUCCESSFUL OPERATION.............................................................................................................................................6
2.3.2 UNSUCCESSFUL OPERATION.........................................................................................................................................6
2.4 GETTING NETWORK ELEMENTS (GETNET)....................................................................................................................7
2.4.1 UNSUCCESSFUL OPERATION.........................................................................................................................................7
2.5 SETTING OUTPUT FILES (SETOUTPUT)...........................................................................................................................7
2.5.1 UNSUCCESSFUL OPERATION.........................................................................................................................................9
2.6 GETTING OUTPUT FILES (GETOUTPUT).........................................................................................................................9
2.6.1 UNSUCCESSFUL OPERATION.........................................................................................................................................9
2.7 SETTING CONDITION (SETCOND)................................................................................................................................10
2.7.1 UNSUCCESSFUL OPERATION.......................................................................................................................................10
2.8 DELETING CONDITION (DELCOND).............................................................................................................................10
2.8.1 SUCCESSFUL OPERATION...........................................................................................................................................10
2.8.2 UNSUCCESSFUL OPERATION, IF ITEM HAS NOT BEEN FOUND............................................................................................10
2.9 GETTING CONDITION (GETCOND)..............................................................................................................................11
2.9.1 UNSUCCESSFUL OPERATION.......................................................................................................................................11
2.10 GETTING UNITS (GETUNITS)...................................................................................................................................12
2.10.1 UNSUCCESSFUL OPERATION.....................................................................................................................................12
2.11 CLOSING UNITS (CLOSEUNITS)................................................................................................................................12
2.11.1 UNSUCCESSFUL OPERATION.....................................................................................................................................12
2.12 SETTING CONDITIONS TO UNIT (SETMON).................................................................................................................13
2.12.1 SUCCESSFUL OPERATION.........................................................................................................................................13
2.12.2 UNSUCCESSFUL OPERATION.....................................................................................................................................13
2.13 REMOVING CONDITIONS (DELMON).........................................................................................................................13
2.13.1 SUCCESSFUL OPERATION.........................................................................................................................................13
2.13.2 UNSUCCESSFUL OPERATION.....................................................................................................................................13
2.14 GETTING MONITORING CONDITIONS (GETMON)........................................................................................................14
2.14.1 SUCCESSFUL OPERATION.........................................................................................................................................14
2.14.2 UNSUCCESSFUL OPERATION.....................................................................................................................................14
2.15 SETTING LOG-FETCHING CONDITIONS (SETLOG)........................................................................................................15
2.15.1 SUCCESSFUL OPERATION.........................................................................................................................................15
2.15.2 UNSUCCESSFUL OPERATION.....................................................................................................................................15
2.16 GETTING LOG-FETCHING CONDITIONS (GETLOG)......................................................................................................15
2.16.1 SUCCESSFUL OPERATION.........................................................................................................................................16
2.16.2 UNSUCCESSFUL OPERATION.....................................................................................................................................16
2.17 STARTING MONITORING (STARTMON)......................................................................................................................16

MEGAMON MONITORING CONTROL 3 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto

10.11.2011

0.6-0

Draft

2.17.1 SUCCESSFUL OPERATION.........................................................................................................................................16


2.17.2 UNSUCCESSFUL OPERATION.....................................................................................................................................16
2.18 STOPPING MONITORING (STOPMON).........................................................................................................................16
2.18.1 SUCCESSFUL OPERATION.........................................................................................................................................16
2.18.2 UNSUCCESSFUL OPERATION.....................................................................................................................................16
2.19 PAUSE/RESUME MONITORING (PAUSEMON, RESUMEMON)........................................................................................16
2.19.1 SUCCESSFUL OPERATION.........................................................................................................................................17
2.19.2 UNSUCCESSFUL OPERATION.....................................................................................................................................17
2.20 STARTING LOG-MONITORING (STARTLOG)...............................................................................................................17
2.20.1 SUCCESSFUL OPERATION.........................................................................................................................................17
2.20.2 UNSUCCESSFUL OPERATION.....................................................................................................................................17
2.21 STOPPING LOG-MONITORING (STOPLOG).................................................................................................................17
2.21.1 SUCCESSFUL OPERATION.........................................................................................................................................17
2.21.2 UNSUCCESSFUL OPERATION.....................................................................................................................................17
2.22 GET STATUS (GETSTAT).........................................................................................................................................17
2.22.1 SUCCESSFUL OPERATION.........................................................................................................................................18
2.22.2 UNSUCCESSFUL OPERATION.....................................................................................................................................18
2.23 START INTERFACE (STARTIF)...................................................................................................................................19
2.23.1 UNSUCCESSFUL OPERATION.....................................................................................................................................19
2.24 STOP INTERFACE (STOPIF)......................................................................................................................................19
2.24.1 UNSUCCESSFUL OPERATION.....................................................................................................................................19
2.25 LOGGING (LOGGING)..............................................................................................................................................20
2.25.1 UNSUCCESSFUL OPERATION.....................................................................................................................................20
3. VERSION HISTORY.........................................................................................................................................21

MEGAMON MONITORING CONTROL 4 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto

10.11.2011

1.

INTRODUCTION

1.1

Purpose of the document

0.6-0

Draft

This document describes the application control of Megamon by telnet-protocol. The


monitoring interface is responsible for controlling the monitoring session.
1.2

Terms, abbreviations and definitions


Megamon

The monitoring application.

Telnet

RFC854

MEGAMON MONITORING CONTROL 5 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto

2.

10.11.2011

0.6-0

Draft

PROCEDURE DESCRIPTION
A telnet connection is created between the client and MegaMon to control the monitoring
session.

Client

MegaMon
1: Request
2: Reply

Figure 1 Principle of command procedure handling

2.1

Opening the connection


A connection is authenticated by password mechanism.
Command syntax:
Username> xxxxxx
Password> xxxxxx

2.1.1

Successful operation

2.1.2

Unsuccessful operation

MEGAMON MONITORING CONTROL 6 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto
2.2

10.11.2011

0.6-0

Draft

Setting network element (SetNet)


Sets the data of network element.
Command syntax:
SetNet:Name=<NetName>,Ip=<IpAddress>{,Port=<Port>} {,DataPort=<DataPort>};
Example:
SetNet:Name=RNC,Ip=10.10.10.10;
NetElem
=======
RNC

2.2.1

IpAddress
===========
10.10.10.10

Port
====
8019

Unsuccessful operation
*** <error code> - <error reason>

2.3

Deleting network element (DelNet)


Sets the data of network element.
Command syntax:
DelNet:Name=<NetName>;
Example:
DelNet:Name=RNC1;

2.3.1

Successful operation
The RNC1 has been deleted.

2.3.2

Unsuccessful operation
*** <error code> - <error reason>

DataPort
========
8020

MEGAMON MONITORING CONTROL 7 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto
2.4

10.11.2011

0.6-0

Draft

Getting network elements (GetNet)


Gives list of network elements.
Command syntax:
GetNet;
Example:
GetNet;
NetElem
=======
RNC
RNC1

2.4.1

IpAddress
===========
10.10.10.10
10.10.10.20

Port
====
8019
8019

DataPort Status
=======
=====
8020
Opened
8020
-

Unsuccessful operation
*** <error code> - <error reason>

2.5

Setting output files (SetOutput)


Sets output directory and files.
SetOutput:<Param>{,<Param>};
Param:

Directory=dir;

ASCII = {YES|NO}
ASCII-Normal text format output, don't use this format if the load is high i.e coming
volume is more than 1000 Msg/s, NO is default.

RINGBUFFER = {YES|NO}
NO is default.

TimeBased=<num in minutes>;
The megamon creates a new directory when this time has been gone by.

SizeLimit=<count>*<size in MB>;
0*0 = not in used. If the ringbuffer mode is not selected then the ring buffer count is
ignored and only the size limitation is used to use.

RemoveSize=<num as in GB>;

MEGAMON MONITORING CONTROL 8 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto

10.11.2011

0.6-0

Draft

The megamon removes files from <Directory> when the hard disk size is below
<RemoveItems>. 0 = not in used.

RemoveAge=<Age as in an hours>;
The megamon removes files from <Directory> when the files are older than
<RemoveAge>. 0 = not in used.

WriteMsg= {YES | NO};


NO = The megamon doesnt write messages if Emil-connection is active
YES = The Megamon writes messages to hard disk (default)

FilenameFormat= format string;


Format string :=
%B
The MB-address of unit
%L
The logical address of unit
%N
The name of network element
%U
The name of computer unit
%a
Abbreviated weekday name
%A
Full weekday name
%b
Abbreviated month name
%c
Date and time representation appropriate for locale
%d
Day of month as decimal number (01 31)
%H
Hour in 24-hour format (00 23)
%I
Hour in 12-hour format (01 12)
%j
Day of year as decimal number (001 366)
%m
Month as decimal number (01 12)
%M
Minute as decimal number (00 59)
%p
Current locales A.M./P.M. indicator for 12-hour clock
%S
Second as decimal number (00 59)
%w
Weekday as decimal number (0 6; Sunday is 0)
%W
Week of year as decimal number, with Monday as first day of
week (00 53)
%x
Date representation for current locale
%X
Time representation for current locale
%y
Year without century, as decimal number (00 99)
%Y
Year with century, as decimal number
%z, %Z
Time-zone name or abbreviation; no characters if time zone is
unknown
%%
Percent sign

ExtraOutput= <MsgNbr>{&<MsgNbr>*2}
<Msgnbr> = 0 not in used

Example printout:

MEGAMON MONITORING CONTROL 9 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto

10.11.2011

0.6-0

Draft

SetOutput:Directory=\"c:\\megis\",ASCII=NO,RingBuffer=NO,TimeBased=
10,SizeLimit=0*0;
SetOutput:RemoveSize=0,RemoveAge=176,WriteMsg=YES,FilenameFormat=\
"%N_%U_%L_%B_%y%m%d_%H%M%S\",ExtraOutput=1&2&3;

2.5.1

Unsuccessful operation
*** <error code> - <error reason>

2.6

Getting output files (GetOutput)


Gets output settings.
GetOutput;

Example printout:
Output settings
===============
Directory
=
ASCII
=
RingBuffer
=
SizeLimit
=
TimeBased
=
RemoveAge
=
RemoveSize
=
WriteMsg
=
FilenameFormat =

2.6.1

c:\megis
NO
NO
Not in used.
10 minutes
Files older than 176 hours are deleted.
Not in used.
YES.
"%N_%U_%L_%B_%y%m%d_%H%M%S"
RNC_ICSU-0_4450_1B_090206_144246.mga

Unsuccessful operation
*** <error code> - <error reason>

MEGAMON MONITORING CONTROL 10 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto
2.7

10.11.2011

0.6-0

Draft

Setting condition (SetCond)


Sets the monitoring conditions.
Command syntax:
SetCond: <ConditionNameName>,<Condition>;
Example:
SetCond:TeleCom,SR:(OFAM=4FD,507,508,509,4FB)AND(NOT(NUM=0001,0002,8037,
8038,0D5BA,0A340,0A339,0D9DA,0D5B8,0AB2B));
ConditionName
============
Telecom

2.7.1

Conditions
=========
SR:(OFAM=4FD,507,508,509,4FB)AND(NOT(NUM=0001,
0002,8037,8038,0D5BA,0A340,0A339,0D9DA,0D5B8,0A
B2B))

Unsuccessful operation
*** <error code> - <error reason>

2.8

Deleting condition (DelCond)


Deletes the monitoring conditions.
Command syntax:
DelCond: <ConditionNameName>;
Example:
DelCond:TeleCom;

2.8.1

Successful operation
Condition TeleCom has been deleted.

2.8.2

Unsuccessful operation, if item has not been found


*** <error code> - <error reason>

MEGAMON MONITORING CONTROL 11 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto
2.9

10.11.2011

0.6-0

Draft

Getting condition (GetCond)


Gets the monitoring conditions.
Command syntax:
GetCond{:ConditionNameName};
Example:
GetCond;
ConditionName
============
Telecom
Test

2.9.1

Conditions
=========
SR:(OFAM=4FD,507,508,509,4FB)AND (NOT(NUM=0001,
0002,8037,8038,0D5BA,0A340,0A339,0D9DA,0D5B8,0A
B2B))
SR:OFAM>0

Unsuccessful operation
*** <error code> - <error reason>

MEGAMON MONITORING CONTROL 12 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto
2.10

10.11.2011

0.6-0

Draft

Getting units (GetUnits)


The client requests MegaMon to open and send units of the net element.
Command syntax:
GetUnits:<NetElement>;
Example:
GetUnits;RNC;

2.10.1

Unit
====
OMU-0

State
====
WO-EX

OMU-1

SP-EX

IpAddress
========
L:EL0:10.10.10.20
P:EL0:10.10.10.21
P:EL0:10.10.10.22

Unsuccessful operation
The megamon replies as an error code, in an unsuccessful case.

2.11

Closing units (CloseUnits)


The client requests MegaMon to close units of the net element. The StopMon-command
closes also units, so its not necessary to use CloseUnits after execution of StopMon.
Command syntax:
CloseUnits;
Example:
CloseUnits;

2.11.1

Unsuccessful operation
The megamon replies as an error code, in an unsuccessful case.

MEGAMON MONITORING CONTROL 13 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto
2.12

10.11.2011

0.6-0

Draft

Setting conditions to unit (SetMon)


The client requests MegaMon to set monitoring conditions for given units.
SetMon:Unit=<unit>,Cond=<Condition name>
{,State=<state>} {,Ip=<IpAddress>} {,Via=CntrlUnit};
Example:
SetMon:Unit=OMU-0,Ip=10.10.10.20,Cond=Telcom;
Unit
====
OMU-0

IpAddress
===========
10.10.10.20

Condition
=========
Telecom

ViaCntrlUnit
============
No

Status
=======
Ok

SetMon:Unit=ICSU,State=WO-EX,Cond=Telcom; // To all WO-EX ICSUs


2.12.1

Successful operation

2.12.2

Unsuccessful operation
*** <error code> - <error reason>

2.13

Removing conditions (DelMon)


The client requests MegaMon to delete conditions. This can be done before StartMoncommand.
DelMon:{Unit=<unit>}{,State=<state>};
DelMon; // Removes all
Example:
DelMon:Unit=OMU-0;
Unit
====
OMU-0

IpAddress
===========
10.10.10.20

Condition
=========
Telecom

ViaCntrlUnit
============
No

SetMon:Unit=ICSU,State=WO-EX,Cond=Telcom;
2.13.1

Successful operation

2.13.2

Unsuccessful operation
*** <error code> - <error reason>

Status
=======
Removed

MEGAMON MONITORING CONTROL 14 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto

2.14

10.11.2011

0.6-0

Getting monitoring conditions (GetMon)


The client requests MegaMon to give set monitoring conditions.
GetMon{:Unit=<Unit>}|{Cond=<Condition name>}|{Via=CntrlUnit};
Example:
GetMon;
Unit
====
OMU-0
ICSU-0

IpAddress
===========
10.10.10.20
10.10.10.30

2.14.1

Successful operation

2.14.2

Unsuccessful operation

Condition
=========
Telecom
Telecom

*** <error code> - <error reason>

ViaCntrlUnit
============
No
No

Status
=======
Ok
Opened

Draft

MEGAMON MONITORING CONTROL 15 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto
2.15

10.11.2011

0.6-0

Draft

Setting log-fetching conditions (SetLog)


The client requests MegaMon to set log-fetching conditions for given units.
SetLog:Unit=<unit>,Cond=<Log Condition>
{,State=<state>};

<Log Condition> := F|E-<Fam>{:<Fam>*4} | S | R


S := Sets log write prevention. All log writings will be prevented.
F := Sets log write prevention to apply to the families given as parameters.
E := Sets log write prevention to apply to all the other families except those given as
parameters.
R := Resets log write prevention. All log writings will be allowed.
Example:
SetLog:Unit=OMU-0,Cond=F-0xA0;
Unit
====
OMU-0

Log Condition
=============
F-0xA0

2.15.1

Successful operation

2.15.2

Unsuccessful operation
*** <error code> - <error reason>

2.16

Getting log-fetching conditions (GetLog)


The client requests MegaMon to send log-fetching conditions for given units or all units.
GetLog{:<Unit>};
Example:
GetLog;
Unit
====
OMU-0

Log Condition(s)
================
F-0xA0

MEGAMON MONITORING CONTROL 16 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto
2.16.1

Successful operation

2.16.2

Unsuccessful operation

10.11.2011

0.6-0

Draft

*** <error code> - <error reason>

2.17

Starting monitoring (StartMon)


The client requests to the Megamon to start monitoring with set conditions by sending
StartMon-command. Its not allowed to send this message, if the StartLog-command has
been sent already!
StartMon;

2.17.1

Successful operation

2.17.2

Unsuccessful operation

2.18

Stopping monitoring (StopMon)


The client requests the Megamon to stop monitoring. Its not allowed to send this message,
if the StopLog-message has been sent already!
StopMon;

2.18.1

Successful operation

2.18.2

Unsuccessful operation

2.19

Pause/Resume monitoring (PauseMon, ResumeMon)


The client requests to the Megamon to pause or resume the monitoring.
PauseMon;
ResumeMon;

MEGAMON MONITORING CONTROL 17 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto
2.19.1

Successful operation

2.19.2

Unsuccessful operation

2.20

Starting Log-monitoring (StartLog)

10.11.2011

0.6-0

Draft

The client requests the Megamon to start computer log-monitoring with set conditions by
sending StartLog-command. Its not allowed to send this message, if the StartLogcommand has been sent already!
StartLog;
2.20.1

Successful operation

2.20.2

Unsuccessful operation

2.21

Stopping Log-monitoring (StopLog)


The client requests the Megamon to stop computer log-monitoring. Its not allowed to send
this command, if the StopMon-command has been sent already!
StopLog;

2.21.1

Successful operation

2.21.2

Unsuccessful operation

2.22

Get status (GetStat)


The megamon sends a status of monitoring.
GetStat;
Example printout:

Status of Monitoring 14:15 21-Oct-2008


======================================
Directory
Type
TimeBased
Msg
Log

=
=
=
=
=

c:\Megis
RINGBUFFER
10 minutes, last change 14:10 21-Oct-2008
68753 KB/s (Written 123 MB)
0 KB/s (Written 0 MB)

MEGAMON MONITORING CONTROL 18 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto
2.22.1

Successful operation

2.22.2

Unsuccessful operation

10.11.2011

0.6-0

Draft

MEGAMON MONITORING CONTROL 19 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto
2.23

10.11.2011

0.6-0

Draft

Start interface (StartIf)


Opens and starts interface for listening.
Command syntax:
StartIf:Name=<type>,Port=<Port>{,Ip=<Listening IpAddress>}{,WriteMsg=YES|NO};
Name
Port
Ip
WriteMsg

:== {Emil | Traffica}


:== 165535
:== 0.0.0.0 means listening all address (default)
:== {YES | NO};
NO = The megamon doesnt write messages if Emil-connection is active
YES = The Megamon writes messages to hard disk (default)

Example:
StartIf:Name=Emil,Port=60001;
2.23.1

Unsuccessful operation
*** <error code> - <error reason>

2.24

Stop interface (StopIf)


Stops the interface.
Command syntax:
StopIf:Name=<type>;
Name :== {Emil | Traffica}
Example:
StopIf:Name=Emil;

2.24.1

Unsuccessful operation
*** <error code> - <error reason>

MEGAMON MONITORING CONTROL 20 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto
2.25

10.11.2011

Logging (Logging)
Opens and Closes logging-file.
Command syntax:
Logging:Type={IF|INT},Action={Open|Close};
Type

:== {If | Int}


If Interface logging file, c:\MegaMonIf.log
Int Internal logging file, c:\MegaMonInt.log

Action

:== {Open|Close}

Example:
// Opens interface logging-file
Logging:Type=IF,Action=Open;
2.25.1

Unsuccessful operation
*** <error code> - <error reason>

0.6-0

Draft

MEGAMON MONITORING CONTROL 21 (21)


PROTOCOL DESCRIPTION
Company Confidential
Petri Aalto
3.

10.11.2011

0.6-0

Draft

VERSION HISTORY
Date

Issue

Author

Main changes

21.10.2008

0.1-0

Petri Aalto

Initial version

03.02.2009

0.2-0

Petri Aalto

The syntax has been changed.

09.02.2009

0.3-0

Petri Aalto

The syntax has been changed

28.02.2009

0.4-0

Petri Aalto

Added CloseUnits, Startf and StopIf

02.03.2009

0.5-0

Petri Aalto

The Syntax has been changed

06.03.2009

0.6-0

Petri Aalto

OpenIf,CloseIf and Logging commands


were added.

You might also like