Ad Widget

Collapse

Web monitoring in Zabbix

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • sa22
    Member
    • Apr 2009
    • 30

    #1

    Web monitoring in Zabbix

    Hi All!
    I'm trying to setup Web monitoring in Zabbix, but it is not so simple.
    We have Documentum 6.5 Web application with such login screen:



    And we need to do periodic test login to monitor the availability status of the service. I don't understand what i should put into the "steps" to login to this form. Here is the form source code:


    HTML Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    
    <html>
    
     <head >
    
     
      <script type="text/javascript">var g_virtualRoot = "/safe";</script>
    
    //.....some code cutted off
    
      <title>
    
       SAFE APP 1.2.3
    
      </title>
    
      <script type="text/javascript" src='/safe/wdk/include/browserRequirements.js'></script>
    
      <script type="text/javascript">
    
    
    
       function onClickHelp()
    
       {
    
        fireClientEvent("InvokeHelp");
    
       }
    
    
    
       function clientSideTestHook()
    
       {
    
       }
    
    
    
       function onSelectDocbaseFromDropDown()
    
       {
    
        var docbaseDropDownList = wdk.dom.get("DocbaseName");
    
        var prefs = InlineRequestEngine.getPreferences(InlineRequestType.JSON);
    
        prefs.setCallback("onSelectDocbaseFromDropDownCallBack");
    
        prefs.setErrorCallback("onSelectDocbaseFromDropDownErrorCallBack");
    
        if (window.suspendTestEvents)
    
        {
    
         window.suspendTestEvents();
    
        }
    
        postInlineServerEvent(null, prefs, docbaseDropDownList.name, null, "onSelectDocbaseFromDropDown",null, null);
    
       }
    
    
    
       function onSelectDocbaseFromDropDownCallBack (data)
    
       {
    
        var bSaveCredential = data['JSON_KEY_IS_SAVE_CREDENTIAL'];
    
        updateSaveCredentialDisplay(bSaveCredential);
    
        updateServerList(data);
    
        releaseEventPostingLock();
    
        if (window.resumeTestEvents)
    
        {
    
         window.resumeTestEvents();
    
        }
    
       }
    
    
    
       function onSelectDocbaseFromDropDownErrorCallBack (data)
    
       {
    
        releaseEventPostingLock();
    
       }
    
    
    
       function onShowOptions()
    
       {
    
        var prefs = InlineRequestEngine.getPreferences(InlineRequestType.JSON);
    
        prefs.setCallback("onShowOptionsCallBack");
    
        prefs.setErrorCallback("onShowOptionsErrorCallBack");
    
        if (window.suspendTestEvents)
    
        {
    
         window.suspendTestEvents();
    
        }
    
        postInlineServerEvent(null, prefs, null, null, "onShowOptions", null, null);
    
       }
    
    
    
       function onShowOptionsCallBack (data)
    
       {
    
        updateShowOptionsDisplay (data);
    
        releaseEventPostingLock();
    
        if (window.resumeTestEvents)
    
        {
    
         window.resumeTestEvents();
    
        }
    
       }
    
    
    
       function onShowOptionsErrorCallBack (data)
    
       {
    
        releaseEventPostingLock();
    
       }
    
    
    
       function updateSaveCredentialDisplay (bSaveCredentialEnabled)
    
       {
    
        showOrHidePanel('saveCredentialPanel', bSaveCredentialEnabled);
    
       }
    
    
    
       function updateServerList (data)
    
       {
    
        var serverListElem = wdk.dom.get('controlserver');
    
        if (serverListElem != null)
    
        {
    
         var serverNames = data['JSON_KEY_SERVER_NAMES'];
    
         var serverLabels = data['JSON_KEY_SERVER_LABELS'];
    
         serverListElem.options.length=1;
    
         for (var i in serverNames)
    
         {
    
          var option = document.createElement('option');
    
          option.value = serverNames[i];
    
          option.text = serverLabels[i];
    
          serverListElem.options[serverListElem.options.length]=option;
    
         }
    
        }
    
       }
    
    
    
       function updateShowOptionsDisplay (data)
    
       {
    
        var bShowOptions = data['JSON_KEY_IS_SHOW_OPTIONS'];
    
        var strShowOptionsLabel = data['JSON_KEY_SHOW_OPTIONS_LABEL'];
    
        var strShowOptionsToolTip = data['JSON_KEY_SHOW_OPTIONS_TOOLTIP'];
    
        var showHideElem = wdk.dom.get('showOptions');
    
        showHideElem.innerHTML = strShowOptionsLabel;
    
        showHideElem.setAttribute('title', strShowOptionsToolTip);
    
        showOrHidePanel('optionsPanel', bShowOptions);
    
        showOrHidePanel('changePasswordPanel', bShowOptions);
    
        var errMsgElem = wdk.dom.get('errorMessage');
    
        if (errMsgElem != null)
    
        {
    
         var errMsgParentElem = wdk.dom.findAncestorWithTagName(errMsgElem, "div");
    
         errMsgParentElem.style.display = "none";
    
        }
    
       }// end of "updateShowOptionsDisplay()"
    
    
    
       function showOrHidePanel(panelName, bIsDisplay)
    
       {
    
        wdk.control.Panel.setVisible(panelName, bIsDisplay);
    
       }
    
      </script>
    
     </head>
    
     <body  id='modalSmall'>
    
      
    
    <script type='text/javascript'>
    
    if (typeof overlayItems != "undefined")
    
    { overlayItems = new Array(); controlData = new Array(); }
    
    </script>
    
    
    
    
    
    <script type='text/javascript'></script>
    
    
    
    <script type="text/javascript" src='/safe/wdk/include/keepFresh.js'></script>
    
    <script type="text/javascript">
    
    function performKeepFresh(){   var timeStampCookie = 'cookieTS__client1';   var freshnessCookie = '__dmfFreshClient__client1';   var freshnessFormCookie = '__dmfFreshForm__client1';   var scriptTimeStamp = 1278493074824;   var currentForm = '1278493074824';   var refreshURL = '/safe/wdk/redirect.jsp?__dmfFreshClient=__client1&Reload=1278493074824';   var executed = syncKeepFresh(timeStampCookie, freshnessCookie, freshnessFormCookie, scriptTimeStamp, currentForm, refreshURL);   if (executed == false)   {      setTimeout('performKeepFresh()', 1000);   }}performKeepFresh()</script>
    
    <script type="text/javascript">var g_bWindowInitialised=false;</script>
    
    <form name='SafeLoginComponent_0' id='SafeLoginComponent_0' class='login' action='/safe/safe/pages/wdk/login/loginex.jsp' method='post'>
    
    <input type='hidden' name='__dmfFormId' value='SafeLoginComponent_0'><input type='hidden' name='__dmfAction'><input type='hidden' name='__dmfHandler'><input type='hidden' name='__dmfHandlerArgs'><input type='hidden' name='__dmfControl'><input type='hidden' name='__dmfUseModalPopup'><input type='hidden' name='__dmfModalPopupWindowSize'><input type='hidden' name='__dmfRefreshParentWindow'><input type='hidden' name='__dmfFromModalPopup' value='false'><input type='hidden' name='__dmfTargetWindowName' value=''><input type='hidden' name='__dmfModalPopupEnabled' value='false'><input type='hidden' name='__dmfDepth' value='0'><input type='hidden' name='__dmfServletPath' value='/safe/pages/wdk/login/loginex.jsp'>
    
    <!-- action=-->
    
    
    
       <script type="text/javascript">checkBrowserEx('6.0,7.0','WARNING: Your browser does not meet the requirements, please contact your System Administrator','Unsupported platform','Unsupported browser','Java support is disabled','Browser version is not supported','Software installation is disabled');</script>
    
       <div id="mainPaneset" style='align:center;top:140'>
    
        <div><span  class='dialogTitle'>SAFE APP 1.2.3</span> </div>
    
        <div id="scrollingcontent" style="overflow: auto;">
    
         <div class="innerContent">
    
          <div id="logo"><span title=''><img name='SafeLoginComponent_Image_0' border=0 alt='' src='/safe/are1/theme/documentum/images/safe_logo.gif'></span></div>
    
          <table align='center' cellspacing='0' cellpadding='0' border='0'>
    
           <tr>
    
            <td scope="row" class="fieldlabel rightAlignment" height="30" ><span  class='defaultLabelStyle'>Login Name</span> </td>
    
            <td class="defaultcolumnspacer">:&nbsp;</td>
    
            <td><input type='text' name='SafeLoginComponent_username_0' id='LoginUsername' title="Login Name" value='adm1' size='40' onkeypress='if (onAutoCompleteKeyPress(event) == false)handleKeyPress(event);'><script type="text/javascript">
    
    autoCompleteTextBinding( [ ], "SafeLoginComponent_0", "SafeLoginComponent_username_0", null, 10, null);</script></td>
    
           </tr>
    
           <tr>
    
            <td></td>
    
            <td></td>
    
            <td></td>
    
           </tr>
    
           <tr>
    
            <td scope="row" class="fieldlabel rightAlignment" height="30" ><span  class='defaultLabelStyle'>Password</span> </td><td class="defaultcolumnspacer">:&nbsp;</td>
    
            <td>
    
             
    
             <input type='password' name='SafeLoginComponent_password_0' id='LoginPassword' title="Password" size='40' onkeypress="handleKeyPress(event)">
    
             
    
            </td>
    
           </tr>
    
           <tr>
    
            <td></td>
    
            <td></td>
    
            <td></td>
    
           </tr>
    
           <tr>
    
            <td scope="row" class="fieldlabel rightAlignment" height="30" nowrap><span  class='defaultLabelStyle'>Repository</span> </td><td class="defaultcolumnspacer">:&nbsp;</td>
    
            <td>
    
             <select name='SafeLoginComponent_docbase_0' id='DocbaseName' title="Repository" size='0' class=defaultDropdownListStyle onchange='setKeys(event);__xaa0onselect(this);' >
    
              
    
               
    
              
    
             <option  value='KAT1' selected>KAT1</option></select><script type="text/javascript">function __xaa0onselect(obj){safeCall(onSelectDocbaseFromDropDown,obj);}</script>
    
            </td>
    
           </tr>
    
           <tr>
    
           
    
            <td scope="row" class="fieldlabel rightAlignment" height="30" nowrap>
    
             <span  class='defaultLabelStyle'>Language</span> </td><td class="defaultcolumnspacer">:&nbsp;
    
            </td>
    
            <td>
    
             <select name='SafeLoginComponent_language_0' id='language' title="Language" size='0' class=defaultDropdownListStyle onchange='setKeys(event);__xaa1onselect(this);' >
    
               
    
                
    
               
    
                
    
               
    
              <option  value='en_US' selected>English (United States)</option><option  value='ru_RU'>русский (Россия)</option></select><script type="text/javascript">function __xaa1onselect(obj){safeCall(postServerEvent2,"SafeLoginComponent_0",null,"SafeLoginComponent_language_0","SafeLoginComponent_0","onChangeLanguage");}</script>
    
            </td>
    
           
    
          </tr>
    
           
    
           
    
           
    
           <span class='saveCredentialPanel'>
    
           <tr class='saveCredentialPanel'>
    
            <td height="5" colspan="3" class="spacer">&nbsp;</td>
    
           </tr>
    
           <tr class='saveCredentialPanel'>
    
            <td scope="row" class="rightAlignment"></td><td></td>
    
            <td>
    
             <input type=hidden name='SafeLoginComponent_saveCredentialCheckbox_hidden_0' value='true'><label><input type='checkbox' name='SafeLoginComponent_saveCredentialCheckbox_0' title="Remember my credentials" value=''>Remember my credentials</label>
    
            </td>
    
           </tr>
    
           </span><script type="text/javascript">
    
    wdk.control.Panel.setVisible ("saveCredentialPanel", false);
    
    </script>
    
           <tr>
    
            <td class="spacer" height="30">&nbsp;</td>
    
            <td></td>
    
            <td></td>
    
           </tr>
    
           <tr>
    
            <td class="fieldlabel leftAlignment" nowrap height="20" colspan="3">
    
            <!--
    
             <a name='SafeLoginComponent_showOptions_0' id='showOptions'  title="[+] More Options" href='#' onclick='setKeys(event);__xaa2onclick(this);return false;'  class='defaultLinkStyle'>[+] More Options</a><script type="text/javascript">function __xaa2onclick(obj){safeCall(onShowOptions,obj);}</script>
    
            --> 
    
            </td>
    
           </tr>
    
           <span class='optionsPanel'>
    
           <tr class='optionsPanel'>
    
            <td class="spacer" height="30">&nbsp;</td>
    
            <td></td>
    
            <td></td>
    
           </tr>
    
           <tr class='optionsPanel'>
    
            <td scope="row" class="fieldlabel rightAlignment" height="30" nowrap>
    
             <span  class='defaultLabelStyle'>Domain</span> </td><td class="defaultcolumnspacer">:&nbsp;
    
            </td>
    
            <td>
    
             <input type='text' name='SafeLoginComponent_domain_0' id='Domain' title="Domain" value='' size='40' onkeypress='if (onAutoCompleteKeyPress(event) == false)handleKeyPress(event);'><script type="text/javascript">
    
    autoCompleteTextBinding( [ ], "SafeLoginComponent_0", "SafeLoginComponent_domain_0", null, 10, null);</script>
    
            </td>
    
           </tr>
    
           <tr class='optionsPanel'>
    
            <td scope="row" class="fieldlabel rightAlignment" height="30" nowrap>
    
             <span  class='defaultLabelStyle'>Language</span> </td><td class="defaultcolumnspacer">:&nbsp;
    
            </td>
    
           <td>
    
            <select name='SafeLoginComponent_language_1' id='language' title="Language" size='0' class=defaultDropdownListStyle onchange='setKeys(event);__xaa3onselect(this);' >
    
             
    
            </select><script type="text/javascript">function __xaa3onselect(obj){safeCall(postServerEvent2,"SafeLoginComponent_0",null,"SafeLoginComponent_language_1","SafeLoginComponent_0","onChangeLanguage");}</script>
    
           </td>
    
          </tr>
    
          
    
          <tr class='optionsPanel'>
    
           <td height="30">&nbsp;</td>
    
           <td>&nbsp;</td>
    
           <td scope="row" class="leftAlignment">
    
            <input type=hidden name='SafeLoginComponent_accessibilityCheckbox_hidden_0' id='accessibilityCheckbox_hidden' value='true'><label for='accessibilityCheckbox'><input type='checkbox' name='SafeLoginComponent_accessibilityCheckbox_0' id='accessibilityCheckbox' title="Additional Accessibility Options" value=''>Additional Accessibility Options</label>
    
           </td
    
          </tr>
    
          </span><script type="text/javascript">
    
    wdk.control.Panel.setVisible ("optionsPanel", false);
    
    </script>
    
         </table>
    
         
    
        </div>
    
       </div>
    
       <div id="buttonareaPane">
    
        <div class="modalSmallButtonBar">
    
         <div class="helpButtonSection">
    
          <button type="button" name='SafeLoginComponent_SafeLoginComponent_Button_0_0' title="Help" class="button image helpImage" onclick='setKeys(event);__xaa4onclick(this);' ><img  src='/safe/wdk/theme/documentum/icons/help.gif' alt="" width=8 height=11 border=0></button><script type="text/javascript">function __xaa4onclick(obj){safeCall(onClickHelp,obj);}</script>
    
         </div>
    
         <div class="rightButtonSection" nowrap>
    
          <button type="button" name='SafeLoginComponent_loginButton_0' title="Login to SAFE application" class="button default" onclick='setKeys(event);__xaa5onclick(this);' >Login</button><script type="text/javascript">
    
    function _swallowevt(){return false;} document.forms["SafeLoginComponent_0"].onsubmit=_swallowevt;
    
    function pressDefaultButton(){safeCall(postServerEvent2,"SafeLoginComponent_0",null,"SafeLoginComponent_loginButton_0","SafeLoginComponent_0","onLogin");}
    
    /* @deprecated g_event. No Longer require seperate handler for NS 6+ */
    
    var g_event;function handleKeyPress(evt){var evt = ( !evt ) ? window.event : evt;if (typeof evt != 'undefined') {
    
    g_event = evt; /* Assigned for backward compatibility */
    
    if (evt.keyCode == 13) { pressDefaultButton(); }
    
    }}</script><script type="text/javascript">function __xaa5onclick(obj){safeCall(postServerEvent2,"SafeLoginComponent_0",null,"SafeLoginComponent_loginButton_0","SafeLoginComponent_0","onLogin");}</script>
    
          <span class='changePasswordPanel'>
    
           <button type="button" name='SafeLoginComponent_changePassword_0' title="Change Password" class="button changePasswordPanel" onclick='setKeys(event);__xaa6onclick(this);' >Change Password</button><script type="text/javascript">function __xaa6onclick(obj){safeCall(postServerEvent2,"SafeLoginComponent_0",null,"SafeLoginComponent_changePassword_0","SafeLoginComponent_0","onChangePassword");}</script>
    
          </span><script type="text/javascript">
    
    wdk.control.Panel.setVisible ("changePasswordPanel", false);
    
    </script>
    
         </div>
    
        </div>
    
       </div>
    
      <input type='hidden' name='__dmfRequestId' value='__client1~~1'><input type='hidden' name='__dmfHiddenX' value='0'><input type='hidden' name='__dmfHiddenY' value='0'><input type='hidden' name='__dmfFormclass' value='com.safe.web.webcomponent.library.login.SafeLoginComponent'><input type='hidden' name='__dmfNlsclass' value='com.safe.wdk.login.LoginNlsProp'><input type='hidden' name='__dmfInitDocbase' value=''><input type='hidden' name='__dmfInitDocbaseUser' value=''><input type='hidden' name='__dmfInitDocbasePassword' value=''><input type='hidden' name='__dmfInitDocbaseDomain' value=''><input type='hidden' name='__dmfInitLocale' value=''><input type='hidden' name='__dmfSerialNumber' value='0'><input type='hidden' name='__dmfClientId' value=''></form>
    
    <script type="text/javascript">
    
    function setBrowserWindowId() {var element = document.forms["SafeLoginComponent_0"].__dmfClientId;element.value=getBrowserId();}setBrowserWindowId();</script>
    
    <script type="text/javascript">
    
    function __onAutoFocus(formId, controlId) {var el = document.forms[formId][controlId];if (el == null) el=document.getElementsByName(controlId); if (typeof bAutoFocus == 'undefined' || bAutoFocus == null || bAutoFocus == true) {   if(el != null)  {    var item = null;    if(typeof el.length != 'undefined' && typeof el.tagName == 'undefined')      item = el[0];    else      item = el;    if(typeof item != 'undefined' && (typeof item.disabled == 'undefined' || item.disabled == false))    {       if (getPopupWnd() != null) { focusPopupWnd();unregisterPopupWnd(); }       else { try{ item.focus(); } catch(ignore){} }     }  }} }
    
    registerClientEventHandler(null, "SafeLoginComponent_0_SetAutoFocus", __onAutoFocus);</script>
    
    <script type="text/javascript">
    
    function SafeLoginComponent_0_initForm(){
    
    setServerForm('SafeLoginComponent_0','__dmfHiddenX','__dmfHiddenY');
    
    if (typeof setScrollPosition != 'undefined') setScrollPosition(0, 0);
    
    if (typeof endModal != 'undefined') endModal();
    
    registerKeyboardEvents(window);
    
    initializeKeysLookup();
    
    loadHotKeysRegistryToTopLevel();
    
    
    
    if (typeof(window.setOnActionMultiselectWindowUnloadHandler) != 'undefined' && window.setOnActionMultiselectWindowUnloadHandler != null){ setOnActionMultiselectWindowUnloadHandler(); }
    
     g_bWindowInitialised=true;
    
    createTestHook('/safe');fireClientEvent('SetHelpURL','/safe/help/help.jsp?context=login&locale=en_US_');fireClientEvent('SafeLoginComponent_0_SetAutoFocus','SafeLoginComponent_0','LoginPassword');
    
    }</script><script type='text/javascript'>document.onreadystatechange = onReadyStateHandler;function onReadyStateHandler() { if (document.readyState=='complete'){SafeLoginComponent_0_initForm(); } } </script><script type="text/javascript">function SafeLoginComponent_0_preSubmitForm(formId, controlId){
    
    
    
    }</script><script type="text/javascript"> document.cookie = 'wdk_sess_cookie_0=eJxTMTG1LSkqTbVRBAAPJwLo;; path=/safe';</script>
    
     </body>
    
    </html>

    Please help!
  • sa22
    Member
    • Apr 2009
    • 30

    #2
    here is tcp-session reconstruction of the Login procedure, where you can see a POST data
    Pastebin.com is the number one paste tool since 2002. Pastebin is a website where you can store text online for a set period of time.

    any ideas hou to check it in zabbix?

    Comment

    Working...