Package cm_api :: Package endpoints :: Module events
[hide private]
[frames] | no frames]

Source Code for Module cm_api.endpoints.events

 1  # Licensed to Cloudera, Inc. under one 
 2  # or more contributor license agreements.  See the NOTICE file 
 3  # distributed with this work for additional information 
 4  # regarding copyright ownership.  Cloudera, Inc. licenses this file 
 5  # to you under the Apache License, Version 2.0 (the 
 6  # "License"); you may not use this file except in compliance 
 7  # with the License.  You may obtain a copy of the License at 
 8  # 
 9  #     http://www.apache.org/licenses/LICENSE-2.0 
10  # 
11  # Unless required by applicable law or agreed to in writing, software 
12  # distributed under the License is distributed on an "AS IS" BASIS, 
13  # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 
14  # See the License for the specific language governing permissions and 
15  # limitations under the License. 
16   
17  try: 
18    import json 
19  except ImportError: 
20    import simplejson as json 
21  import logging 
22   
23  from cm_api.endpoints.types import * 
24   
25  __docformat__ = "epytext" 
26   
27  EVENTS_PATH = "/events" 
28  LOG = logging.getLogger(__name__) 
29   
30 -def query_events(resource_root, query_str=None):
31 """ 32 Search for events. 33 @param query_str: Query string. 34 @return: A list of ApiEvent. 35 """ 36 if query_str: 37 params = dict(query=query_str) 38 else: 39 params = { } 40 resp = resource_root.get(EVENTS_PATH, params=params) 41 return ApiList.from_json_dict(ApiEvent, resp, resource_root)
42
43 -def get_event(resource_root, event_id):
44 """ 45 Retrieve a particular event by ID. 46 @param event_id: The event ID. 47 @return: An ApiEvent. 48 """ 49 resp = resource_root.get("%s/%s" % (EVENTS_PATH, event_id)) 50 return ApiEvent.from_json_dict(resp, resource_root)
51 52
53 -class ApiEvent(BaseApiObject):
54 _ATTRIBUTES = { 55 'id' : ROAttr(), 56 'content' : ROAttr(), 57 'timeOccurred' : ROAttr(datetime.datetime), 58 'timeReceived' : ROAttr(datetime.datetime), 59 'category' : ROAttr(), 60 'severity' : ROAttr(), 61 'alert' : ROAttr(), 62 'attributes' : ROAttr(), 63 } 64
65 - def __init__(self, resource_root):
66 BaseApiObject.init(self, resource_root)
67