A newer version of this documentation is available.

View Latest

SG Collect Info

    +

    With this release comes a new command line utility called sgcollect_info that provides us with detailed statistics for a specific node. Run sgcollect_info on each node individually, not on all simultaneously.

    Outputs:

    1. Logs

    2. Configuration

    3. Expvars (exported variables) that contain important stats

    4. System Level OS stats

    5. Golang profile output (runtime memory and cpu profiling info)

    Installing Optional Dependencies

    sgcollect_info will be able to collect more information if the following tools are installed:

    • Golang — this should be the same version that Sync Gateway was built with.

    SG Version Go build version

    1.3.0

    1.5.3

    1.3.1

    1.6.3

    If go is not installed, sgcollect_info will print the following error message, you can ignore this message and there is no need to report it.

    Exception during compression: [Error 2] The system cannot find the file specified IMPORTANT: Compression using gozip failed. Falling back to python implementation. Please let us know about this and provide console output.

    Zipfile contents

    The tool creates the following log files in the ouput file.

    Log file Description

    sync_gateway_access.log

    The http access log for sync gateway (i.e which GETs and PUTs it has received and from which IPs)

    sg_accel_access.log

    The http access log for sg_accel (i.e which GETs and PUTs it has received and from which IPs)

    sg_accel_error.log

    The error log (all logging sent to stderr by sg_accel) for the sg_accel process

    sync_gateway_error.log

    The error log (all logging sent to stderr by sync_gateway) for the sync_gateway process

    server_status.log

    The output of http://localhost:4895 for the running sync gateway

    db_db_name_status.log

    The output of http://localhost:4895/db_name for the running sync gateway

    sync_gateway.json

    The on-disk configuration file used by sync_gateway when it was launched

    sg_accel.json

    The on-disk configuration file used by sg_accel when it was launched

    running_server_config.log

    The configuration used by sync gateway as it is running (may not match the on-disk config as it can be changed on-the-fly)

    running_db_db_name_config.log

    The config used by sync gateway for the database specified by db_name

    expvars_json.log

    The expvars (global exposed variables - see http://www.mikeperham.com/2014/12/17/expvar-metrics-for-golang/ for the running sync gateway instance)

    sgcollect_info_options.log

    The command line arguments passed to sgcollect_info for this particular output

    sync_gateway.log

    OS-level System Stats

    expvars_json.log

    Exported Variables (expvars) from Sync Gateway which show runtime stats

    goroutine.pdf/raw/txt

    Goroutine pprof profile output

    heap.pdf/raw/txt

    Heap pprof profile output

    profile.pdf/raw/txt

    CPU profile pprof profile output

    syslog.tar.gz

    System level logs like /var/log/dmesg on Linux

    sync_gateway

    The Sync Gateway binary executable

    pprof_http_*.log

    The pprof output that collects directly via an http client rather than using go tool, in case Go is not installed

    If go is not installed, sgcollect_info will print the following error message, you can ignore this message and there is no need to report it.

    Exception during compression: [Error 2] The system cannot find the file specified IMPORTANT:Compression using gozip failed. Falling back to python implementation. Please let us know about this and provide console output.

    Sharing Files with Us

    The sgcollect_info tool can result in large files. Simply run the command below, replacing <FILE NAME> and <YOUR COMPANY NAME>, to upload a file to our cloud storage on Amazon AWS. Make sure you include the last slash (/) character after the company name.

    curl --upload-file FILE NAME https://s3.amazonaws.com/customers.couchbase.com/<YOUR COMPANY NAME>/
    We ship curl with Couchbase Server, on Linux this is located in /opt/couchbase/bin/.