コード例 #1
0
ファイル: process.py プロジェクト: jeffreymingyue/Python-SDK
def edit_process_monitor(**kwargs):
    ''' Edit the specified process monitor '''
    required = ['testId']
    required.extend(common_required)
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='editProcessMonitor', **req_args)
コード例 #2
0
ファイル: layout.py プロジェクト: SeanYa/Python-SDK
def add_page_module(**kwargs):
    ''' Add a module to the specified page. '''
    required = ['moduleName', 'pageId', 'column', 'row', 'dataModuleId']
    optional = ['height']

    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='addPageModule', **req_args)
コード例 #3
0
def add_load_average_monitor(**kwargs):
    ''' Add a new internal load monitor '''
    required = ['agentkey']
    required.extend(common_required)
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='addLoadAverageMonitor', **req_args)
コード例 #4
0
def edit_load_average_monitor(**kwargs):
    ''' Edit the specified load monitor '''
    required = ['testId']
    required.extend(common_required)
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='editLoadAverageMonitor', **req_args)
コード例 #5
0
ファイル: contacts.py プロジェクト: SeanYa/Python-SDK
def confirm_contact(**kwargs):
    ''' Confirm the specified contact '''
    required = ['contactId', 'confirmationKey']
    optional = []

    post_args = validate_kwargs(required, optional, **kwargs)
    return post(action='confirmContact', **post_args)
コード例 #6
0
ファイル: http.py プロジェクト: SeanYa/Python-SDK
def edit_internal_http_monitor(**kwargs):
    ''' Edit the specified http monitor '''
    required = ['testId', 'urlParams']
    required.extend(common_required)
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='editInternalHttpMonitor', **req_args)
コード例 #7
0
ファイル: process.py プロジェクト: SeanYa/Python-SDK
def edit_process_monitor(**kwargs):
    ''' Edit the specified process monitor '''
    required = ['testId']
    required.extend(common_required)
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='editProcessMonitor', **req_args)
コード例 #8
0
ファイル: process.py プロジェクト: SeanYa/Python-SDK
def add_process_monitor(**kwargs):
    ''' Add a new internal process monitor '''
    required = ['agentkey', 'processName']
    required.extend(common_required)
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='addProcessMonitor', **req_args)
コード例 #9
0
ファイル: process.py プロジェクト: jeffreymingyue/Python-SDK
def add_process_monitor(**kwargs):
    ''' Add a new internal process monitor '''
    required = ['agentkey', 'processName']
    required.extend(common_required)
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='addProcessMonitor', **req_args)
コード例 #10
0
ファイル: loadavg.py プロジェクト: SeanYa/Python-SDK
def add_load_average_monitor(**kwargs):
    """ Add a new internal load monitor """
    required = ["agentkey"]
    required.extend(common_required)
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action="addLoadAverageMonitor", **req_args)
コード例 #11
0
ファイル: drive.py プロジェクト: kaptainkommie/Python-SDK
def add_drive_monitor(**kwargs):
    ''' Add a new internal drive monitor '''
    required = ['agentkey', 'driveLetter']
    required.extend(common_required)
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='addDriveMonitor', **req_args)
コード例 #12
0
ファイル: ping.py プロジェクト: kaptainkommie/Python-SDK
def edit_internal_ping_monitor(**kwargs):
    ''' Edit the specified Ping monitor '''
    required = ['testId']
    required.extend(common_required)
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='editInternalPingMonitor', **req_args)
コード例 #13
0
ファイル: memory.py プロジェクト: SeanYa/Python-SDK
def edit_memory_monitor(**kwargs):
    """ Edit the specified memory monitor """
    required = ["testId"]
    required.extend(common_required)
    optional = ["freeLimit", "freeSwapLimit", "freeVirtualLimit", "bufferedLimit", "cachedLimit"]
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action="editMemoryMonitor", **req_args)
コード例 #14
0
ファイル: ping.py プロジェクト: kaptainkommie/Python-SDK
def add_internal_ping_monitor(**kwargs):
    ''' Add a new internal ping monitor '''
    required = ['userAgentId', 'url']
    required.extend(common_required)
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='addInternalPingMonitor', **req_args)
コード例 #15
0
ファイル: memory.py プロジェクト: SeanYa/Python-SDK
def add_memory_monitor(**kwargs):
    """ Add a new internal memory monitor """
    required = ["agentkey"]
    required.extend(common_required)
    optional = ["freeLimit", "freeSwapLimit", "freeVirtualLimit", "bufferedLimit", "cachedLimit"]
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action="addMemoryMonitor", **req_args)
コード例 #16
0
def get_notification_rules(**kwargs):
    ''' Get list of existing notification rules for the specified monitor '''
    required = ['monitorId', 'monitorType']
    optional = []

    get_args = validate_kwargs(required, optional, **kwargs)
    return get(action='getNotificationRules', **get_args)
コード例 #17
0
def add_notification_rule(**kwargs):
    ''' Add a notification rule for monitor - contact pair '''
    required = ['monitorId', 'monitorType', 'period', 'notifyBackup',
                'continuousAlerts', 'failureCount']

    optional = ['weekdayFrom', 'weekdayTo', 'timeFrom', 'timeTo',
                'contactGroup', 'contactId', 'minFailedLocationCount',
                'paramName', 'paramValue', 'comparingMethod']

    post_args = validate_kwargs(required, optional, **kwargs)

    # paramName and paramValue are required when monitorType is custom
    if post_args.get('monitorType', None) is 'custom':
        if not (post_args.has_key('paramName') \
            and post_args.has_key('paramValue')):
            raise MonitisError('paramName and paramValue are required')
    # comparingMethod is required when paramName and paramValue are present
    if post_args.has_key('paramName') or post_args.has_key('paramValue'):
        if not post_args.has_key('comparingMethod'):
            raise MonitisError('comparingMethod is required')

    # either contact_group or contact_id must be specified
    if not (post_args.has_key('contactGroup') \
        or post_args.has_key('contactId')):
        raise MonitisError('Either contactName or contactGroup is required')

    return post(action='addNotificationRule', **post_args)
コード例 #18
0
ファイル: loadavg.py プロジェクト: SeanYa/Python-SDK
def edit_load_average_monitor(**kwargs):
    """ Edit the specified load monitor """
    required = ["testId"]
    required.extend(common_required)
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action="editLoadAverageMonitor", **req_args)
コード例 #19
0
ファイル: http.py プロジェクト: kaptainkommie/Python-SDK
def edit_internal_http_monitor(**kwargs):
    ''' Edit the specified http monitor '''
    required = ['testId', 'urlParams']
    required.extend(common_required)
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='editInternalHttpMonitor', **req_args)
コード例 #20
0
ファイル: cpu.py プロジェクト: kaptainkommie/Python-SDK
def delete_cpu_monitors(**kwargs):
    ''' Delete the specified CPU monitors '''
    required = ['testIds']
    optional = []

    req_args = validate_kwargs(required, optional, **kwargs)
    req_args['type'] = 7  # 7 is the type ID for CPU monitors
    return delete_internal_monitors(**req_args)
コード例 #21
0
ファイル: agent.py プロジェクト: SeanYa/Python-SDK
def agent_info(**kwargs):
    ''' Get information for the specified agent '''
    required = {'agent_id': 'agentId'}
    optional = {}

    req_args = validate_kwargs(required, optional, **kwargs)

    return get(action='agentInfo', **req_args)
コード例 #22
0
def get_jobs(**kwargs):
    ''' Get jobs for the specified custom agent '''
    required = {'agent_id': 'agentId'}
    optional = {}

    req_args = validate_kwargs(required, optional, **kwargs)

    return get(action='getJobs', **req_args)
コード例 #23
0
ファイル: fullpageload.py プロジェクト: SeanYa/Python-SDK
def activate_full_page_load_monitor(**kwargs):
    ''' Activate full page load monitors '''
    required = []
    optional = ['monitorIds', 'tag']

    req_args = validate_kwargs(required, optional, **kwargs)

    return post(action='activateFullPageLoadMonitor', **req_args)
コード例 #24
0
ファイル: agent.py プロジェクト: SeanYa/Python-SDK
def add_agent(**kwargs):
    ''' Register a new custom agent in Monitis '''
    required = {'name': 'name'}
    optional = {'params': 'params'}

    req_args = validate_kwargs(required, optional, **kwargs)

    return post(action='addAgent', **req_args)
コード例 #25
0
ファイル: agent.py プロジェクト: SeanYa/Python-SDK
def delete_agent(**kwargs):
    ''' Delete a custom agent '''
    required = {'agent_ids': 'agentIds'}
    optional = {'delete_monitors': 'deleteMonitors'}

    req_args = validate_kwargs(required, optional, **kwargs)

    return post(action='deleteAgent', **req_args)
コード例 #26
0
def add_agent(**kwargs):
    ''' Register a new custom agent in Monitis '''
    required = {'name': 'name'}
    optional = {'params': 'params'}

    req_args = validate_kwargs(required, optional, **kwargs)

    return post(action='addAgent', **req_args)
コード例 #27
0
def transaction_test_result(**kwargs):
    ''' Get results for the specified Transaction or
    Full Page Load monitor
    '''
    required = ['monitorId', 'year', 'month', 'day']
    optional = ['locationIds', 'timezone']
    req_args = validate_kwargs(required, optional, **kwargs)
    return get(action='transactionTestResult', **req_args)
コード例 #28
0
ファイル: agent.py プロジェクト: SeanYa/Python-SDK
def delete_job(**kwargs):
    ''' Delete custom agent jobs '''
    required = {'job_ids': 'jobIds'}
    optional = {}

    req_args = validate_kwargs(required, optional, **kwargs)

    return post(action='deleteJob', **req_args)
コード例 #29
0
def activate_full_page_load_monitor(**kwargs):
    ''' Activate full page load monitors '''
    required = []
    optional = ['monitorIds', 'tag']

    req_args = validate_kwargs(required, optional, **kwargs)

    return post(action='activateFullPageLoadMonitor', **req_args)
コード例 #30
0
ファイル: agent.py プロジェクト: SeanYa/Python-SDK
def get_jobs(**kwargs):
    ''' Get jobs for the specified custom agent '''
    required = {'agent_id': 'agentId'}
    optional = {}

    req_args = validate_kwargs(required, optional, **kwargs)

    return get(action='getJobs', **req_args)
コード例 #31
0
def delete_agent(**kwargs):
    ''' Delete a custom agent '''
    required = {'agent_ids': 'agentIds'}
    optional = {'delete_monitors': 'deleteMonitors'}

    req_args = validate_kwargs(required, optional, **kwargs)

    return post(action='deleteAgent', **req_args)
コード例 #32
0
def delete_agents(**kwargs):
    ''' Delete agent from user's account '''
    required = []
    optional = ['agentIds', 'keyRegExp']
    req_args = validate_kwargs(required, optional, **kwargs)
    if not ('agentIds' in req_args or 'keyRegExp' in req_args):
        raise MonitisError('agent_ids or key_reg_exp is required')
    return post(action='deleteAgents', **req_args)
コード例 #33
0
def delete_job(**kwargs):
    ''' Delete custom agent jobs '''
    required = {'job_ids': 'jobIds'}
    optional = {}

    req_args = validate_kwargs(required, optional, **kwargs)

    return post(action='deleteJob', **req_args)
コード例 #34
0
ファイル: contacts.py プロジェクト: SeanYa/Python-SDK
def edit_contact(**kwargs):
    '''  '''
    required = ['contactId']
    optional = ['firstName', 'lastName', 'account', 'contactType', 'timezone',
                'portable', 'code', 'country', 'textType']

    post_args = validate_kwargs(required, optional, **kwargs)
    return post(action='editContact', **post_args)
コード例 #35
0
def edit_agent(**kwargs):
    ''' Edit an existing custom agent '''
    required = {'name': 'name', 'agent_id': 'agentId'}
    optional = {'params': 'params'}

    req_args = validate_kwargs(required, optional, **kwargs)

    return post(action='editAgent', **req_args)
コード例 #36
0
ファイル: contacts.py プロジェクト: SeanYa/Python-SDK
def get_recent_alerts(**kwargs):
    ''' Get recent alerts history

    Start date and end date are in miliseconds since the Epoch'''
    required = []
    optional = ['timezone', 'startDate', 'endDate']
    post_args = validate_kwargs(required, optional, **kwargs)
    return get(action='recentAlerts', **post_args)
コード例 #37
0
ファイル: agent.py プロジェクト: SeanYa/Python-SDK
def edit_agent(**kwargs):
    ''' Edit an existing custom agent '''
    required = {'name': 'name', 'agent_id': 'agentId'}
    optional = {'params': 'params'}

    req_args = validate_kwargs(required, optional, **kwargs)

    return post(action='editAgent', **req_args)
コード例 #38
0
def agent_info(**kwargs):
    ''' Get information for the specified agent '''
    required = {'agent_id': 'agentId'}
    optional = {}

    req_args = validate_kwargs(required, optional, **kwargs)

    return get(action='agentInfo', **req_args)
コード例 #39
0
ファイル: http.py プロジェクト: SeanYa/Python-SDK
def add_internal_http_monitor(**kwargs):
    ''' Add a new internal http monitor '''
    required = ['userAgentId', 'url', 'contentMatchFlag', 'loadFull',
                'overSSL', 'redirect']
    required.extend(common_required)
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='addInternalHttpMonitor', **req_args)
コード例 #40
0
ファイル: agent.py プロジェクト: SeanYa/Python-SDK
def edit_job(**kwargs):
    ''' Edit an existing custom agent job '''
    required = {'job_id': 'jobId'}
    optional = {'name': 'name', 'type': 'type', 'interval': 'interval',
                'params': 'params', 'active_flag': 'activeFlag'}

    req_args = validate_kwargs(required, optional, **kwargs)

    return post(action='editJob', **req_args)
コード例 #41
0
def activate_transaction_monitor(**kwargs):
    ''' Activate transaction monitors '''
    required = []
    optional = ['monitorIds', 'tag']
    req_args = validate_kwargs(required, optional, **kwargs)
    monitor_ids = req_args.get('monitorIds', None)
    if isinstance(monitor_ids, list):
        req_args['monitorIds'] = ','.join(map(str,monitor_ids))
    return post(action='activateTransactionMonitor', **req_args)
コード例 #42
0
def transaction_snapshot(**kwargs):
    ''' Get last results of user's Transaction monitors '''
    required = []
    optional = ['locationIds']
    req_args = validate_kwargs(required, optional, **kwargs)
    location_ids = req_args.get('locationIds', None)
    if isinstance(location_ids, list):
        req_args['locationIds'] = ','.join(map(str,location_ids))
    return get(action='transactionSnapshot', **req_args)
コード例 #43
0
ファイル: agent.py プロジェクト: SeanYa/Python-SDK
def get_agents(**kwargs):
    ''' Get user's custom agents '''
    required = {}
    optional = {'load_tests': 'loadTests', 'load_params': 'loadParams',
                'type': 'type'}

    req_args = validate_kwargs(required, optional, **kwargs)

    return get(action='getAgents', **req_args)
コード例 #44
0
def download_agent(**kwargs):
    ''' Download the agent

    Returns a raw HTTP Response object instead of parsed JSON
    '''
    required = ['platform']
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='downloadAgent', _raw=True, **req_args)
コード例 #45
0
ファイル: cloud.py プロジェクト: jeffreymingyue/Python-SDK
def cloud_instances(**kwargs):
    ''' Get a user's cloud instances

    Parameters:
        timezoneoffset - offset relative to GMT, in minutes
    '''
    required = []
    optional = ['timezoneoffset']
    req_args = validate_kwargs(required, optional, **kwargs)
    return get(action='cloudInstances', **req_args)
コード例 #46
0
ファイル: memory.py プロジェクト: kaptainkommie/Python-SDK
def add_memory_monitor(**kwargs):
    ''' Add a new internal memory monitor '''
    required = ['agentkey']
    required.extend(common_required)
    optional = [
        'freeLimit', 'freeSwapLimit', 'freeVirtualLimit', 'bufferedLimit',
        'cachedLimit'
    ]
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='addMemoryMonitor', **req_args)
コード例 #47
0
ファイル: memory.py プロジェクト: kaptainkommie/Python-SDK
def edit_memory_monitor(**kwargs):
    ''' Edit the specified memory monitor '''
    required = ['testId']
    required.extend(common_required)
    optional = [
        'freeLimit', 'freeSwapLimit', 'freeVirtualLimit', 'bufferedLimit',
        'cachedLimit'
    ]
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='editMemoryMonitor', **req_args)
コード例 #48
0
ファイル: http.py プロジェクト: kaptainkommie/Python-SDK
def add_internal_http_monitor(**kwargs):
    ''' Add a new internal http monitor '''
    required = [
        'userAgentId', 'url', 'contentMatchFlag', 'loadFull', 'overSSL',
        'redirect'
    ]
    required.extend(common_required)
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return post(action='addInternalHttpMonitor', **req_args)
コード例 #49
0
def delete_full_page_load_monitor(**kwargs):
    ''' Delete an existing full page load monitor '''
    required = ['monitorId']
    optional = []

    req_args = validate_kwargs(required, optional, **kwargs)
    monitor_id = req_args['monitorId']
    if isinstance(monitor_id, list):
        req_args['monitorId'] = ','.join(monitor_id)
    return post(action='deleteFullPageLoadMonitor', **req_args)
コード例 #50
0
def visitor_tracking_info(**kwargs):
    ''' get information about the specified Visitor Tracker 

    Results are a list, but the order may differ from the docs
    [siteId, url, name, monitorId], though it isn't
    entirely clear.
    '''
    required = ['siteId']
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)
    return get(action='visitorTrackingInfo', **req_args)
コード例 #51
0
def delete_external_monitor(**kwargs):
    ''' Delete one or more external monitors '''
    required = ['testIds']
    optional = []
    req_args = validate_kwargs(required, optional, **kwargs)

    # if test_ids is a list, make a comma delimited string
    test_ids = req_args.get('testIds')
    if type(test_ids) is list:
        req_args['testIds'] = ','.join(test_ids)
    return post(action='deleteExternalMonitor', **req_args)