Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

MC2

Rest

REST Services

MC2 provides various Rest REST interfaces to support available features such as including the generic load, extract, health check, and pace -reportservices etcreport services. It is a multi-tier architecture for security, scalability, and fault tolerances. Before understand understanding how to troubleshoot MC2's ReST REST services, it is essential to understand review all the components involved from the configuration to run time. If you already familiar all these components, please skip to troubleshooting section.To enable MC2 ReST services, it  

The MC2 REST services includes the following components: 

  • Eagle Web Server

  • MC2 extractservice lb

  • MC2 extractservice worker

  • MC2 pyruleservice

  • Pace-reportservice

On this page

Table of Contents
minLevel1
maxLevel2
outlinefalse
styledefault
typelist
printabletrue

High Level Diagram

Following picture

The diagram below depicts the high-level flows of current MC2

Rest

REST Services. 

Image Added

MC2

ReST services deployment and enabling

REST Services Deployment and Enablement

MC2

can be

is enabled by the following steps:

  1. Install the Eagle/MC2 "all-services" packages from the EagleML Installer.

Reference EagleML
  1. Reference EagleML / MC2 Release

Deployment for detail
  1. Deployment for detailed steps of the deployment.

  2. After

deploy
  1. deploying,

users needs to further
  1. configure the Eagle Web Services

Frontend
  1. front-end to enable

ReST
  1. REST and SOAP services.

Reference Installation
  1. Reference the Installation additional configurations for

MC2 for
  1. MC2 for configuration details.

  2. After

frontend
  1. front-end configuration,

make sure
  1.  restart the Eagle WebServer and/or IIS to ensure the configuration

taking
  1. changes take effect.

MC2

Rest

REST Endpoints Routing

MC2 currently supports the following

Rest

REST Services:

  • MC2 REST Endpoints for Simple Extracts

  • MC2 REST

encpoints
  • Endpoints for the Generic Extractor (POST only)

EBS
  • EDS/EQL Endpoints (POST only)

  • Health Check Endpoints (backend access only)

Pace
  • PACE report service (additional services outside MC2) to run OLAP reports (both POST and GET requests).

MC2 Rest Service Routes

For the MC2 Generic Load/Extract, it travels through the following route:

Rest

REST Client → Web Server (Security Validation) → MC2 Load Balancer → MC2 Worker.

For an MC2

EBS

EDS Request, it travels through the following route:

Rest

REST Client → Web Server (Security Validation) → MC2 Load Balancer → Pyruleservice.

For

Pace

PACE Report Service

Rest

REST Request, it

will take

takes the route below:

Rest

REST Client → Web Server (Security Validation) → MC2 Load Balancer →

Pace

PACE Report Service.

When encounter errors,

If an error occurs, it depends on the type of request and error code

,

to resolve.  Review and identify the route and then check each endpoint of the route to diagnose the trouble endpoint(s).

anchorMC2 Rest Troubleshooting

MC2 Rest Troubleshooting

General Troubleshooting

guide

When

invoke

invoking MC2

rest

REST services, it returns a status code which follows the standard of HTTP

respond

response codes:

  • 200+   OK

  • 400+   bad client request

  • 500+   internal server error

Possible

client-side requests issues:

Client-Side Requests Issues

When

Rest

REST Invocation responds with an error code int range of 400+, it usually indicates that the error is on the client end with the exception of when server endpoint is down.

Frequently bad request error codes are:

  • 400 - Bad request

  • 401 - Unauthorized

  • 403 - Forbidden

  • 404 - Not Found

Checklist when

When encountering client-side errors

are

:

  • If the response code = 400 or 404, check if

request
  • the requested URL is correct or the server URL is accessible.

  • If the response code = 401, check if the correct authentication parameters, user name or password, is specified correctly as part of request.

  • If the response code = 403, the specified URL is not allowed.

Possible

server endpoints services issues:

Server Endpoint Services Issues

When

Rest

the REST Invocation

failed

fails with error code >= 500, it indicates

as

a server

site errors

side error.

Is

Review the following items:

  • Are all corresponding backend endpoints

are
  • up and running?

Is
  • Are are all System configurations accurate?

Is
  • Are all deployed Endpoints versions

compatibility
  • others ...
    • compatible?

    There are multiple ways to check if all backend services are up and running. It is easier to log in to the backend servers

    or

    with backend

    accesses

    access to perform the following checks

    .

    :

    • Check MC2 health using

    healthcheck url
    • the Healthcheck Url

    From the browser, check the health check url http://{appserver}:{healthcheckport}/health. On the returning

    json

    JSON, check if all services are "UP".

    • From the backend, check if the MC2 services (extractservicelb, extractserviceworker, kafkaservice and pyruleservices) are up and running:

    Please

    reference MC2 Troubleshooting to

    reference the MC2 Troubleshooting to check if all the required services endpoint

    is

    are up and running.

    • Check version incompatibilities

    It is strongly recommended that all MC2 components

    need to be

    are from the same release. Please

    reference 

    reference the Installed Version Check and verify all installed versions.

    For an issue related to the pace-reportservice endpoint, check the following:

    • Is the pace-reportservice deployed?

    "pace-reportservice" is deployed on $EAGLE_ROOT_TO_APP/estar/tpe/servers/pace-reportservice. Ensure there is a deployed version in the path.

    • Is the pace-reportservice up and running?

    Login to backend,

    check

    run the command "ps -ef | grep pace-reportserivce" and

    see

    review if the process is up and running.

    Frequently Encountered Issues and Troubleshooting Steps

    Receive Eagle

    landing page when invoke Rest serviceWhen submit Rest request, receiving

    Landing Page When Invoking REST Service

    When submitting the REST request, the request produces the landing page contents instead of the expected JSON data response

    ,

    .  This is usually due to a configuration issue and/or issues on the Eagle WebServer.

    Following

    Use the following steps to diagnose the issue:

    Checking configuration

    Check Configuration

    Check the ${EagleAppToRoot}/tpe/cfg/starsecuity.ini configurations specified

    in Installation

    in the Installation additional configurations for

    MC2 and

    MC2 and validate all corresponding configuration from all WebServer nodes.

    Repeat the above actions for all the WebServer nodes and ensure the changes

    has

    have been made for all WebServer nodes.

    Checking status

    Check the Status of WebServer(s)

    From the System Management Console (sample image below), check all of the listed services

    type equals

    "Type" equal to  "WEBSERVER" have the "last recycle" time greater than the timestamp of the starsecurity.ini and

    status are

    the "Status Message" reflects the value of "UP".

    Image Removed
    Image Added

    URLs for a

    quick check of the rest endpointsFollowing

    Quick Check of Rest Endpoints

    The following URLs can be used for a quick diagnosis of the health of MC2 rest endpoints

    replace

    . Replace webserver with webserver hostname or IP address.

    http://{webserver}/eagle/v2/api-doc

    https://{webserver}/mc2/swagger-ui.

    html or http

    html or http://{webserver}/mc2/swagger-ui.html

    or more extract specific URLs such as:

    https://{webserver}/eagle/v2/entities?maxrows=1