# Guide to OpenIG
Chapter 11. Configuration Templates

Sidebar | Prev | Up | Next

## 11.1. Proxy & Capture

Proxies all requests and captures them in a flat file. Use this template if you need to analyze the traffic for your application. Simply change the `baseURI` to be that of the target application, restart OpenIG, and login to the application. The entire sequence is logged to the flat file.

    {
        "heap": {
            "objects": [
                {
                    "name": "HandlerServlet",
                    "comment": "Transforms Servlet request to handler request.",
                    "type": "HandlerServlet",
                    "config": {
                        "handler": "DispatchHandler"
                    }
                },
                {
                    "name": "DispatchHandler",
                    "type": "DispatchHandler",
                    "config": {
                        "bindings": [
                            {
                                "condition": "${exchange.request.uri.scheme == 'http'}",
                                "handler": "OutgoingChain",
                                "baseURI": "http://TARGETIP"
                            },
                            {
                                "condition": "${exchange.request.uri.path == '/login'}",
                                "handler": "LoginChain",
                                "baseURI": "https://TARGETIP"
                            },
                            {
                                "handler": "OutgoingChain",
                                "baseURI": "https://TARGETIP"
                            }
                        ]
                    }
                },
                {
                    "name": "LoginChain",
                    "type": "Chain",
                    "config": {
                        "filters": [],
                        "handler": "OutgoingChain"
                    }
                },
                {
                    "name": "OutgoingChain",
                    "type": "Chain",
                    "config": {
                        "filters": [
                            "CaptureFilter"
                        ],
                        "handler": "ClientHandler"
                    }
                },
                {
                    "name": "CaptureFilter",
                    "type": "CaptureFilter",
                    "config": {
                        "captureEntity": false,
                        "file": "/tmp/gateway.log"
                    }
                },
                {
                    "name": "ClientHandler",
                    "comment": "Sends all requests to remote servers.",
                    "type": "ClientHandler",
                    "config": {}
                }
            ]
        },
        "servletObject": "HandlerServlet"
    }