GLogs & Session Viewer

Overview

Here at HSP, we believe in technical transparency and self-serviceable platforms.
In light of these principles, we have developed a Session Viewer tool.
This tool allows users to view, save and analyze any activity made in a session, including requests/responses to and from HSP API, and also requests/responses to and from supplier APIs.

Any booking related activity is saved in XML/JSON format into a file, and the file is dumped to the session.
The tool offers 4 main functions :

  1. Viewing a specific session by a SessionID.
  2. Viewing a session associated with a specific SegmentID.
  3. Viewing a session made by a specific user
  4. Inspecting failed booking transactions

The tool can be accessed through a designated URL: https://logs.hsp.gimmonix.com/ using the user’s login credentials (username & password).
Alternatively, while you are logged to the Back-Office system and using one of our services, press Alt+S simultaneously on any page and login with your credentials to access the session data of the current active session.

Getting started

All HSP users can use our session viewer tool and browse sessions for a comprehensive inspection of the services data. The tool’s viewing privileges are user-role based :

  1. Regular user - any user of the system, which is not a root user. See root user definition
    below. Regular users will have access only to their own sessions.
  2. Root user - a user that is defined directly under the main company node (folder) on its company hierarchy.

For a root user, there are two utilities to begin with :

Auditing → Sessions
This utility can be used for the following purposes :

  • Viewing a specific session by a Session ID.
  • Viewing a session associated with a specific Segment ID.
  • Viewing a session made by a specific user.

Auditing →Transactions
This utility can be used for inspecting failed booking transactions:

Browsing for session by Segment ID

The HSP system distributes a unique numeric ID for each and every type of order made through its Hotels, Flights, Cars, Activities and Transfers services. Future services will also distribute reservation IDs by this method.
The unique ID represents a system sequential order number (Order ID), and its respective Segment ID.
Each Order ID can be coupled with one or more segments. When it comes to following-up on your orders, it is preferable to focus on the Segment ID level.
The tool allows the user to run a query for the actions made on single segment:

Searching by Segment ID allows the user to inquire which action types were made for a given segment.
In the figure above, we see that there were three different action types on Segment ID - 1880727.
HotelsBook - this action type represents the Booking process in its entirety.
HotelsBookInfo - this action type represents a Check Status process, executed on the
segment.
HotelsCancelSegment - this action type represents a Cancel process, executed on the
segment.

For each action type we can recognize the user who performed the action by the ‘User name’,
and the timestamp (formatted in GMT time) for that the action, and the session where the action
took place in.

Browsing for session by SessionID

The HSP system distributes a unique SessionID for each and every transaction/Call which is made.
The unique SessionID represents a system sequential session which initiated, from the Search request to the Book request.
Each SessionID can be searched and reviewed .


Inspecting & Reviewing Logs

Each interaction with the HSP API is logged in the Glogs (Session Viewer tool), capturing both requests and responses, including those related to suppliers.

Example - Search request section

Example - Search request section

This comprehensive recording facilitates the examination of errors, logs, and flows, providing insights into API behavior and other valuable information.

GLogs provide a range of data fields and information essential for understanding business logic and flow. In each session, you'll encounter:

  • Time Stamp:
    The UTC timestamp indicating when the request was made or response received.
  • Session Duration:
    The timestamp indicating the length of the session, with the initial request marked as 00:00 and subsequent requests and responses also time-stamped.

  • Transaction Duration:
    The duration of a specific transaction, i.e. Search Hotels, Get Packages, Cancellation Policy etc.

  • Sequence:
    Transaction type.
  • Size:
    The size of the request/response/csv/dump in bytes/Kilobytes.
  • Actions:
    Each log row as 3 actions that can take place:
    Mark -
    Mark a specific request + response, i.e. by clicking "Mark" on EPS-Search, it will also mark the response accordingly :

    Save Entire File -
    Saves the log locally.

    View Entire File -
    View the log.

  • Short Supplier Name:
    The abbreviated name of the supplier, applicable only when a request/response involves a supplier. If blank, it pertains to HSP data.

  • DUMP Name:
    The name of the dump, i.e. EPS-Search / HB2-Book (Response) / HotelBookRequest etc..


Failed Booking Transactions

The Failed Booking Transactions section allows you to inspect any failed booking attempts on a specific date, and to review in depth any errors which may have occurred during the activity.
You can access this section by choosing “Transactions” from the Auditing menu.
The figure above depicts the entire section page, which is divided into two parts:

  1. The left side of the screen shows the failed bookings rows, organized in a table. It
    enables you to query and filter the table by any column header.
  2. The right side of the screen shows the partial session view. For the row chosen on the
    right, it details the session’s activities, starting from the booking step, the dumps (files) in
    XML/JSON formats and timestamps, and allows you to use the action buttons: View,
    Save and Mark for each activity.

Each utility is explained in detail later on.

The failed booking transactions table

The data displayed in the table (to the left) can be filtered by the following criteria:

FieldExplanation
DateDate Focuses on failed booking transactions made on a specific date.
Contains service
errors
Represents the ErrorCode identificator. For example, E4050.
Session IdFilters a specific session to get its booking steps and ErrorCode.
By choosing and clicking on a failed booking attempt session
(represented by one table row on the left side of the screen), a partial
view of the session logs will appear to the right of the table, specifically
the booking step logs.

The data displayed for each session is organized by two sets of table columns - the tracing
columns and the booking flow method name columns.

The main table is set to the tracing columns which are arranged by the following headers:

FieldExplanation
TimeRepresents the action date & time.
AffId
(stands for Affiliate ID)
The unique numeric ID for your affiliate in our system.
User NameThe user who initiated the booking request.
ErrorCodeHSP's Error Code for the failed booking attempt, which
occurred during the session. There might be several Error Codes in
a single session.

There are two main types of errors displayed in the system: a Supplier Error and a Service
Error.

  1. A Supplier Error is a warning or a supplier service fault message. It is originated on the
    supplier’s system in response to a booking request sent by a HSP user. The
    supplier error might be caused by a supplier service rule, an internal error in the
    supplier’s infrastructure, a communication timeout, etc..
  2. A Service Error is a translated error message returned from HSP system,
    based on a supplier error, or based on an internal logic (for example, price change
    captured during the booking attempt). In order to simplify the error handling process for
    clients and prevent overloading with too many errors to handle, we made translations to
    suppliers errors.

For example, a supplier might return an error code for sold-out status as “err1234”, while
other suppliers might return it as “err6789”. In such case, both suppliers error messages
will be translated to a single error returning from HSP system.
Below are some of the most frequent error codes you should be aware of:

Error CodeDescription
E4100No availability from the supplier. Try to book a different package
E1100Something in your request did not pass our validation. See detailed error
message for more info i.e. check for 2 letters valid State (for US only), check
for credit card details, etc.
E3000Credit card issue such as incorrect credit card type/number/cvv, etc., or the
credit card company did not authorize the card.
E4050Error with supplier which is handled on our side, hence you can try re-booking
this package again.
E4060Contact the supplier to refill your credit or deposit funds to prevent such errors.

Partial Session Viewer

The partial session viewer, which is set to the right side of the Transactions section, displays the activities made from the moment of the booking request was sent by the user.
An Activity can be defined as an incoming request to HSP, an outgoing request to a supplier, an incoming response from supplier and an outgoing response from HSP to the client.
You can View, Mark and Save any activity, including internal system dumps.
A session log dump is structured from the below columns :

The full session view is similar to the partial session view, and extends it even more by
displaying activities made from the moment the user sent the Search request to HSP
system (opposed to the Partial Session View, which displays activities from the moment the
user sent a Book request to HSP).

The table describes the main columns of the session log dump viewer:

Field Explanation
Date Time Stamp (GMT)The timestamped occurrence of a sent request or a received
response.
Total Time Passed (in
milliseconds)
The time passed from the last logged action
Time Passed from
Sequence (seconds)
The time passed from the beginning of the sequence.
Sequence NumberEach call to our API is given a sequential identifier in the
session.
Dump Inspection Actions● Mark - Marking entries enables you to visually
differentiate and couple each log with its initiatory or
subsequent log entry
● Save - Download the XML file for a specific log
● View - View the XML file for a specific log
File NameThis is the name of the XML file as it was written to our
system.

Auditing Sessions

Sessions can be accessed by each user who initiated any kind of service activity via the system or the API. You can access the sessions audit inspector by choosing “Sessions” from the Auditing menu.

The inspector allows you to filter the users by two different parameters:

  • Date - the date on which an action was made by a certain user.
  • Environment - the system environment in which the action was made - a production
    environment (Prod) or a test environment (Test).
  • The list comprises of all users who have accessed and used the services, and it enlists each
    user ID with its respective username.

By choosing a user, the inspector will display all the user’s sessions for the selected date and environment, enveloped within hyperlinked timestamps.
By choosing a specific time, a list of session unique identifiers will appear.
Clicking on a unique identifier will display the full logdump of the session.