def main(): syslog.openlog(ident="IPCheck-ALERT-AGENT", logoption=syslog.LOG_PID, facility=syslog.LOG_LOCAL0) sdk = eossdk.Sdk() IPCheck = IPCheckAgent(sdk, sdk.get_timeout_mgr()) sdk.main_loop(sys.argv)
def main(): syslog.openlog(ident="toptalkers-AGENT", logoption=syslog.LOG_PID, facility=syslog.LOG_LOCAL4) sdk = eossdk.Sdk() toptalkers = toptalkersAgent(sdk, sdk.get_timeout_mgr()) sdk.main_loop(sys.argv)
def main(): syslog.openlog(ident="PingCheck-ALERT-AGENT", logoption=syslog.LOG_PID, facility=syslog.LOG_LOCAL4) sdk = eossdk.Sdk() PingCheck = PingCheckAgent(sdk, sdk.get_timeout_mgr(), sdk.get_vrf_mgr(), sdk.get_eapi_mgr()) sdk.main_loop(sys.argv)
def main(): # Because we use `print' and we want our stuff to show up in the # agent logs immediately. os.environ['PYTHONUNBUFFERED'] = '1' # TODO: Use tracing instead. # Config file path has to be provided by the environment variable filename = os.environ.get('POLICY_ROUTER_CONFIG') # Obtain a reference to the EOS SDK sdk = eossdk.Sdk() # Instantiate the policy router application _ = PolicyHandler(sdk, filename) # Run the agent until terminated by a signal sdk.main_loop(['PolicyRouter'])
def main(): if eossdk == None: # This collector requires the eossdk module return 13 # Ask tcollector to not respawn us sdk = eossdk.Sdk("tcollector-eos") # Create the state managers we're going to poll. For now, # we're just pulling information on interface counters agent_mgr = sdk.get_agent_mgr() intf_mgr = sdk.get_intf_mgr() intf_counter_mgr = sdk.get_intf_counter_mgr() eth_phy_intf_counter_mgr = sdk.get_eth_phy_intf_counter_mgr() timeout_mgr = sdk.get_timeout_mgr() # Create a periodic interface counter collector _ = IntfCounterCollector(agent_mgr, timeout_mgr, intf_mgr, intf_counter_mgr, eth_phy_intf_counter_mgr) # Start the main loop sdk.main_loop(sys.argv)
def insert_v6_routes_vrf(self, start, end, vrf): self.tracer.trace1("Starting to insert {} v6_routes into vrf {}, \ starting at route {}".format(end, vrf, start)) for i in range(start, end): rkey6 = self.create_ip_v6_route_key(i) route6 = eossdk.IpRoute(rkey6) route6.tag_is(self.tag) self.ipMgr.ip_route_set(route6, vrf) self.tracer.trace1("Finished inserting {} routes into vrf {}, \ starting at route {}".format(end, vrf, start)) def delete_v6_routes_vrf(self, start, end, vrf): self.tracer.trace1("Starting to delete {} routes from vrf {}, \ starting at route {}".format(end, vrf, start)) for i in range(start, end): rkey6 = self.create_ip_v6_route_key(i) self.ipMgr.ip_route_del(rkey6, vrf) self.tracer.trace1("Finished deleting {} routes into vrf {}, \ starting at route {}".format(end, vrf, start)) if __name__ == "__main__": sdk_ = eossdk.Sdk() # Assign the agent instance to a variable so it remains in scope and # is not deleted: _ = RouteUpdater(sdk_) sdk_.main_loop(sys.argv)
def main(args): sdk = eossdk.Sdk() _ = MplsTunnelLivenessAgent(sdk) sdk.main_loop(args)
# pylint: enable-msg=E1101 self.inotifier = pyinotify.AsyncNotifier(self.wm, InotifyHandler(parent=self)) # We coalesce events because some editors (or unix operations) cause # multiple changes on one save. self.inotifier.coalesce_events(True) # Now that we've set up our inotify watcher and notifier, grab # the underlying file descriptor and pass it to the SDK to be # watched. When the OS detects a change to the file, we'll self.inotify_fd = self.wm.get_fd() self.tracer.trace0("Watching inotify fd: %d" % self.inotify_fd) self.watch_readable(self.inotify_fd, True) def on_readable(self, fd): if fd == self.inotify_fd: self.inotifier.handle_read() def process_file(self): self.tracer.trace0("Re-processing config") if __name__ == "__main__": sdk = eossdk.Sdk() parser = argparse.ArgumentParser( description="Watch a file for changes using EOS SDK's `fd` module.") parser.add_argument("filename", help="the file to watch") args = parser.parse_args() _ = FileWatcher(args.filename) sdk.main_loop(sys.argv)
def main(): sdk = eossdk.Sdk() _ = TcollectorAgent(sdk) debug("Starting agent") sdk.main_loop(sys.argv)
def main(): sdk = eossdk.Sdk() ACLerator = ACLerate(sdk) sdk.main_loop(sys.argv)
def main(args): sdk = eossdk.Sdk("DirectFlowProgrammer") programmer = DirectFlowProgrammer(sdk.get_agent_mgr(), sdk.get_directflow_mgr()) sdk.main_loop(sys.argv) print "Saw %d flow status changes" % programmer.changes
def main(args): sdk = eossdk.Sdk() testAgent = MyTestAgent(sdk.get_agent_mgr(), sdk.get_intf_mgr(), "Ethernet1") sdk.main_loop(args) print "Handled %d events" % testAgent.eventCount
def main(): syslog.openlog(ident="INTF-ALERT-AGENT",logoption=syslog.LOG_PID, facility=syslog.LOG_LOCAL0) sdk = eossdk.Sdk() _ = intfReactor(sdk, sdk.get_agent_mgr(), sdk.get_intf_mgr()) sdk.main_loop(sys.argv)