• setup notifier actions in aodh alarm


    Aodh alarm NOTIFIER ==>

    alarm_actions URL: http://<host>/<action>

    NOTIFIER will resolve the URL and post the data to http server

    setup a Http server ==>

    such as: python -m SimpleHTTPServer 8000

    link: https://docs.python.org/2/library/simplehttpserver.html

    NOTE: this case only receive the posted data, but not handle it.

    such as:

    stack@stack:~$ cat reflect.py 
    #!/usr/bin/env python
    # Reflects the requests from HTTP methods GET, POST, PUT, and DELETE
    # Written by Nathan Hamiel (2010)
    
    from BaseHTTPServer import HTTPServer, BaseHTTPRequestHandler
    from optparse import OptionParser
    
    class RequestHandler(BaseHTTPRequestHandler):
        
        def do_GET(self):
            
            request_path = self.path
            
            print("
    ----- Request Start ----->
    ")
            print(request_path)
            print(self.headers)
            print("<----- Request End -----
    ")
            
            self.send_response(200)
            self.send_header("Set-Cookie", "foo=bar")
            
        def do_POST(self):
            
            request_path = self.path
            
            print("
    ----- Request Start ----->
    ")
            print(request_path)
            
            request_headers = self.headers
            content_length = request_headers.getheaders('content-length')
            length = int(content_length[0]) if content_length else 0
            
            print(request_headers)
            print(self.rfile.read(length))
            print("<----- Request End -----
    ")
            
            self.send_response(200)
        
        do_PUT = do_POST
        do_DELETE = do_GET
            
    def main():
        port = 8000
        print('Listening on localhost:%s' % port)
        server = HTTPServer(('0.0.0.0', port), RequestHandler)
        server.serve_forever()
    
            
    if __name__ == "__main__":
        parser = OptionParser()
        parser.usage = ("Creates an http-server that will echo out any GET or POST parameters
    "
                        "Run:
    
    "
                        "   reflect")
        (options, args) = parser.parse_args()
        
        main()
  • 相关阅读:
    利用dockerfile定制镜像
    发布Docker 镜像到dockerhub
    Docker 停止容器
    133. Clone Graph
    132. Palindrome Partitioning II
    131. Palindrome Partitioning
    130. Surrounded Regions
    129. Sum Root to Leaf Numbers
    128. Longest Consecutive Sequence
    127. Word Ladder
  • 原文地址:https://www.cnblogs.com/lifeinsmile/p/5583272.html
Copyright © 2020-2023  润新知