- 
                Notifications
    You must be signed in to change notification settings 
- Fork 44
GatewayConfig
        Thiago Bustamante edited this page May 18, 2017 
        ·
        30 revisions
      
    This is the Gateway config descriptor. It can be configured inside tree-gateway.json file or passed directly to SDK.gateway.updateConfig() method.
It support the following properties:
| Property | Type | Description | Required | 
|---|---|---|---|
| protocol | ProtocolConfig | The gateway protocol configuration. | true | 
| underProxy | boolean | If we are behind a reverse proxy (Heroku, Bluemix, AWS if you use an ELB, custom Nginx setup, etc). | false | 
| logger | LoggerConfig | Configurations for gateway logger. | false | 
| accessLogger | AccessLoggerConfig | Configurations for gateway access logger. | false | 
| statsConfig | StatsConfig | Configurations for gateway access logger. | false | 
| monitor | MonitorConfig[] | Create monitors to actively collect some stats. | false | 
| admin | AdminConfig | If provided, Configure the admin service for the gateway. | false | 
Example:
{
    "protocol": {
        "http": {
            "listenPort": 8000
        }
    },
    "admin": {
        "protocol": {
            "http": {
                "listenPort": 8001
            }
        },
        "accessLogger": {
            "msg": "HTTP {{req.method}} - {{res.statusCode}} - {{req.url}} ({{res.responseTime}}ms) ",
            "console": {
                "timestamp": true,
                "colorize": true
            }
        },
        "userService": {
            "jwtSecret": "secret"
        }
    },
    "logger": {
        "level": "info",
        "console": {
            "colorize": true
        },
        "file": {
            "timestamp": true,
            "outputDir": "./logs",
            "json": false, 
            "prettyPrint": true 
        }
    },
    "monitor": [
        {
            "name": "cpu",
            "statsConfig": {
                "granularity": {
                    "duration": "1 minute",
                    "ttl": "2 days"
                }
            }            
        }
    ]
}