Clouds

1º Go to Policies on LINK

2º Create new policie with bellow content

3º Go to AWS Console in IAM Service and create an use

Police Content

#About

This policy Allows:

  • EC2 Provisioning, control and manage instances with TAG “1P”. Our agent doesn’t use Key pair.
  • RDS, Elasticache, EC2, IAM, Cloudwatch and S3 in list and get requests types
  • EKS Full Access (Optionally)

1st Access the link to access the Azure Portal https://portal.azure.com/#blade/Microsoft_AAD_IAM/ActiveDirectoryMenuBlade/RegisteredApps

2nd Click on New registration, and in the field “name” set the 1p-agent identification, according to the image below and then, click on create.

3rd Click on Certificates & secrets, then New client secret, in the Description field place the 1p-agent-secret identification and set it to expire in 24 months, then click on Add to add.

After completing this step, save the identification presented in the value field, this information will be used later to register the cloud in 1P.

4th Click on Overview in the sidebar and copy the information in the Application (client) ID and Directory (tenant) ID field.

Keep these credentials together with the information saved in step 3. They will also be used in the cloud configuration in 1P.

5th In the portal search bar look for subscriptions and access, as in the image below.

6th Copy the information presented in the subscriptionsID field and keep it saved in the clipboard, then click on the link in the subscription Name field

7th In the subscription Name area access Access Control (IAM) in the sidebar, and then find the Create a custom role field and click on ADD

8th In the options presented in the upper bar, click on JSON, edit and insert the code below.

In order for the code to run successfully, it is necessary to enter the subscription ID that is on your clipboard, according to step 6 in the determined area in the script below.

The subscription ID must be inserted in the sixth line, replacing all the information PASTE THE SUBSCRIPTION ID HERE.

  {

    “properties”: {

        “roleName”: “1p-agent-role”,

        “description”: “1p role”,

        “assignableScopes”: [

            “/subscriptions/PASTE THE SUBSCRIPTION ID HERE

        ],

        “permissions”: [

            {

                “actions”: [

                    “Microsoft.Compute/*/read”,

                    “Microsoft.Compute/availabilitySets/*”,

                    “Microsoft.Compute/virtualMachines/*”,

                    “Microsoft.Compute/disks/*”,

                    “Microsoft.Network/*/read”,

                    “Microsoft.Network/publicIPAddresses/*”,

                    “Microsoft.Network/networkInterfaces/*”,

                    “Microsoft.Network/networkSecurityGroups/*”,

                    “Microsoft.Network/networkInterfaces/write”,

                    “Microsoft.Network/virtualNetworks/subnets/join/action”,

                    “Microsoft.Storage/storageAccounts/*”,

                    “Microsoft.Resources/*/read”,

                    “Microsoft.Resourcehealth/healthevent/*”,

                    “Microsoft.Resources/tags/*”,

                    “Microsoft.Resources/marketplace/purchase/*”,

                    “Microsoft.Resources/subscriptions/resourceGroups/*”

                ],

                “notActions”: [],

                “dataActions”: [],

                “notDataActions”: []

            }

        ]

    }

}

9th Click on Save

[image of applied json]

10th Click on next, and then on create to generate the new role.

 

11th Still inside the Access Control (IAM) panel, click on Add role assignments. In the Role field, set the 1p-agent-role identification, in Select enter the information 1p-agent, then click on Save. [once associated, follow the 1P config – click here]

After these steps, the Azure user will be created and ready to move to 1P cloud configuration.

First, you need to set cloud providers.

Click on “Clouds” in the sidebar.

A “NEW” button will appear, almost in the page header. Click this button.

Set the cloud by:

  • AWS
  • AZURE
  • Custom

(selecting the cloud)

 

When selecting the cloud you want to configure, more settings will appear according to your need.

(configuration for AWS Cloud)

(configuration for Azure Cloud)

 

Then, name the cloud you are configuring. (It doesn’t necessarily have to be the name associated with your product’s cloud).

You can register cloud providers according to the amount available in your plan. To learn more about plans, click here.

Environment

After setup the cloud provider, we have to configure the environments.

Click on “Environments” in the sidebar.

A “NEW” button will appear, almost in the page header. Click this button.

In this step, you will need:

  • Set a name for the environment
  • Assign to a cloud provider registered in the step above
  • Designate a tag

(new environment registration)

 

When assigning one of the registered clouds, new configurations will appear according to the need of the designated cloud.

(configuration for AWS Cloud)

(configuration for Azure Cloud)

 

Tip: ideally, the registered name and tag should be used as in your environment, for association and communication with One Platform.

You can register environments according to the amount available in your plan. To learn more about plans, click here.

Plans & Pricing

Product

This is where we find the Resilience Matrix with the information generated by One Platform (1P).

Click on “Products” in the sidebar.

A “NEW” button will appear, almost in the page header. Click this button.

In this step, you will need:

  • Enter a name
  • Description field
  • Select the teams that will manage the product

Tip: the registration of Teams can be done in the product registration.

After creating a product, it is necessary to configure the applications to complete the resilience matrix and start monitoring.

To insert the applications in your product, click on “new resource” and then, a pop up will appear with 3 types of application registration, differentiating the type of monitoring that will be done:

Internal Application: You need to have the agent installed on your cloud. You can also add dependencies.

  • Agent required
  • Allow dependencies

External Application With Dependencies: You need to have the agent installed on your cloud. You can also add dependencies.

  • Agent required
  • Allow dependencies

Application Monitoring via Webhook: We’ll register hits and failures received via webhook.

  • No agent
  • No dependencies

Setup Application: Internal Monitoring

A new popup will open on the current screen. In this step, you will need to:

  • Choose an environment
  • Enter a name for the application
  • Insert healthcheck URL
  • Select the method
  • Fill ‘validations string’
  • Set the interval and timeout (they are with default configuration, can be changed if necessary)

With these settings, it is available to create an application for the registered product. They are mandatory information.

When selecting the method field, more configurations may appear according to your need.

Setup Application: External application with dependencies

A popup will open on the current screen, similar to the internal application registration screen, as presented in the topic above. In this step, you will need to configure:

  • Choose an environment
  • Enter a name for the application
  • Insert healthcheck URL
  • Select the method
  • Fill ‘validations string’
  • Set the interval and timeout (they are with default configuration, can be changed if necessary)

What is external monitoring and when to enable it?

The external monitoring feature works by monitoring through an external agent (as if it were a user without access to the cloud provider) to generate the data and the resilience matrix.

Setup Application: Application Monitoring via Webhook

The applications registration monitored via webhook in 1P is simple and fast.

In this step it will be necessary to:

  • Select the Environment
  • Choose an application name that will be used for identification in 1P

After registering the application with monitoring via webhook, you will be directed to the application page created.

After configuring the previous steps, One Platform will insert an agent in your cloud provider that does the internal monitoring and generates the resilience matrix for your product.

The external monitoring function acts by monitoring through an external agent (as if it were a user without access to the cloud provider) to generate the data and the resilience matrix.

If the function is activated (in green), external monitoring will be performed. If you disable the function (in gray) the monitoring will be done by the internal agent.

You can register applications according to the amount available in your plan. To learn more about plans, click here.

Feature available along with application metrics for monitoring the performance and impact of deployments.

The graphic shows the response time between the 1P agent and the application through the determined route by the health check URL. Also presenting the deployments performed on the timeline, in order to monitor the impact on the application after the change.

It presents the data of the last 24 hours as a standard configuration and in the upper right corner it is possible to find tools to modify the data collection, such as the check interval and cut any oscillation necessary for more specific analysis.

Learn about the extra features in latency and deployments graphic

We have four basic functions in this functionality: select zoom, panning, reset zoom and export data. Learn more about each one below:

Selection Zoom: With the function activated, it is possible to select a part of the graphic and isolate a specific range. The plus and minus buttons are complementary and provide a general zoom of the graphic.

(selection zoom action)

Panning: used for selection and horizontal movement of the graphic, for a range ahead or past history.

(panning action)

Reset Zoom: symbolized with a house, it is used to adjust the graphic zoom to the last 24 hours pattern. Just click and the graphic will be adjusted automatically.

More: represented with 3 lines, they are actions to export the data presented in the graphic.

You can export the data set in the following formats:

  • SVG
  • PNG
  • CSV

(download action)

Learn about deployments graphic

When your development team releases a change in a service, it is extremely necessary to constantly monitor this application to know if there has been an improvement or worsening in its performance.

When inserting a deployment in your product application in 1P, we have the record presented on the graphic of the day and time when the change was made, therefore, identifying if there was an impact on the response time after the release.

The deployment record is also saved in the application’s timeline, along with incident notifications.

The “Call Rotation” feature is designed for the distribution of notifications in case of on-call workers, team escalation and notification via SMS and call.

Call Rotation is configured per team. It will be activated in case of an incident for all products that are monitored by the determined team.

It works in parallel with the pre-configured notification channels in the “Notifications” tab; however, Call Rotation is exclusive for SMS and phone call notifications.

Before starting the Call Rotation escalation configuration, it is necessary that the users registered in the team have their cell phone number validated on the platform. If they do not, they will not receive the call or SMS.

To do cell phone validation, just click here.

How to configure Call Rotation

As previously mentioned, the Call Rotation feature is configured by the team. Then, you need to access the team to start the configuration.

Below are all the ways to access the settings of the desired team.

Access to the team via Product:

Click on “Product” in the sidebar. Then, select the product that has the team you want to configure.

In the upper bar, next to “Availability”, where your Resilience Matrix is shown, there is a “Teams” tab. Select the desired team in this tab and you will be redirected to the team configuration.

Tip: if you access the team through the Product, it does not mean that the Call Rotation escalation will be configured only for the selected Product. The configuration is made by each team, and if that team is assigned to another product, an incident notification for the two or more products will be inserted in the Call Rotation escalation. This access is only to locate the desired team.

 

Access to the team via the sidebar:

Click on “Teams” in the sidebar. Then, select the team you want to configure.

In the upper bar, select the tab named “Call Rotation” next to “Notifications”.

Reminder: Call Rotation escalation will be configured for all products monitored by this team.

Learning the ways to set up the team’s escalation

The escalation is created from “events” that can be determined by day, week or month.

You can create an individual event for a day, by clicking on the date on the calendar beside and/or holding and dragging the mouse cursor from the start date to the end date creating events with repetition.

It can be one day, two days, four days, a full week, fifteen days or the whole month. As needed, according to your team’s demand.

 

After selecting the desired dates, we will complete the event information. The following information will always refer to one day! If you have selected more dates, the event will be repeated.

Thus, resulting in an event with daily, weekly or monthly repetition with the information of a day for the team. Similar to Google Calendar.

 

Configuring the event

After following the steps and recommendations already described, your OnePlatform page will look similar to the screenshot below:

Add the team’s start and end time according to the daily schedule. The time format is 24h. If the escalation is at night, just add the time corresponding to the night and morning that the system automatically distributes the event from one day to the next.

Step Group are the people who will be responsible for responding to incidents on this escalation. Just select which group you want to assign notifications to.

If it is the first time you are configuring Call Rotation, it is necessary to create a Step Group by clicking on .

To create the Step Group: choose the first employee of the escalation to be notified, select from the SMS or Voice Call options and configure the time interval that the alert will be sent and for how long this first employee should be alerted until following the flow.

Add another employee of the escalation in “add step”, following the same settings and activation options.

Tip: only users with the verified cell phone number will be available. If the employee does not appear, it is because they need to check the cell phone number.

Tip: if you want to notify the same employee via SMS and Voice Call, just add it twice and select a notification method for each step.

The Step Group configuration is individual for each customer and can have the number of employees needed.

Illustrative image to present the Step Group configuration.

To finish the Step Group configuration, name the flow created and then, click on save.

You can also choose the color to differentiate one escalation from the other, edit or delete the Step Group.

This Step Group will be saved in Call Rotation to configure more events using the same flow.

 

Once the dates, time and employees for the escalation have been configured, just click on create to register the Call Rotation events.

Illustrative image of the calendar after the creating the events.

Access the application you want to configure monitoring, and click on the “Hits and Failures API” button.

Then, a popup will open on the screen containing the information that will be used in the communication between your environment and 1P, for data analysis, development of the resilience matrix, incident control and other features available on the platform.

Just replace the <token> and follow the popup instructions to finish the configuration and start monitoring.To learn more about registering credentials and granting access to the token, just click here.

In One Platform it is possible to generate a status page about your applications and dependencies registered in your digital product.

This page is modular and customizable according to your needs or your customer. It can be configured which applications and dependencies you want to monitor in a macro way (only the status of the application in the total set) or if you prefer to present the status of each individual component.

You can register as many status pages as you want, with different components for a given team, customer or objective.

On the status page, it is possible to follow the current status of the application or dependency, informing if it is Operational, Partially Operational or Non-Operational along with the average response time of the respective component. Helping to understand if, in addition to being operating normally, the time that the component is taking to answer the end user.

You can also track, in the last 7 days, whether there have been incidents on a given day and their current status, making it public if the incident has already been resolved or if the status remains. Only application incidents and dependencies that are configured to be displayed are shown.

Internal metrics or sensitive operating information are not presented for the engineering and product team, and may only be monitored in the Resilience Matrix.

The status page feature is available for use according to your 1P plan. If it is not released, talk to our customer service in the chat.

To create a status page, go to the left sidebar and click on Status Page.

On the next screen, there will be a listing of all status pages already configured (if any).

To create a new public status page, click on NEW, the green button in the upper right corner.

A new page configuration screen will open. In this step, you customize name, url and the components that will be displayed in this particular status page.

First enter a name that will be displayed on your Status Page. Below are comparative images of configuration and presentation.

By default, we use the same name as the page to create the URL slug, but it can be customized as you wish. It is not mandatory to have the same name and slug.

(1P configuration)

(displayed on the public status page)

 

Below the name and slug, the status page components are displayed.

The components are divided and configured by groups, and in these groups are shown the applications and dependencies desired for each separation.

See below a model of how it was configured in 1P and how it looks:

(configuration made in 1P)

(components shown on the status page)

 

In this step, we have two blocks: My Resources x What will be shown in your Status Page.

My Resources field presents your products registered in 1P, with the names pre-configured on the application pages.

What will be shown in your Status Page, well, is what will definitely be presented and made public.

 

Click on ADD Group and a component icon will be placed in the block on the right. Name the group in the available field, and drag an application or dependency under the created name.

This configuration works as a drag-and-drop, that is, just select, drag the components from one block to another and drop.

After configuring as desired, click on Save at the bottom of the page.

Automatic saving is not done.

 

The public status page URL created will be generated after performing the steps described above and the name and slug will be available right below.

Services

With the registered clouds, environment and services, monitoring begins!

The registration of services and dependencies, can be performed individually as we will present in the step by step below.

It also can be done when registering the application, in which you register the application and then, on the same page, add dependencies (services) and addOns. The services registered by the application are also saved in 1P, and you can use the same service for more than one application.

To find out about the application registration, click here.

Tip: the same information requested in the individual registration, is also necessary if the service is registered via the application.

 

Below is the step by step to register individual services:

Click on “Services” in the sidebar.

A “NEW” button will appear, almost in the page header. Click this button.

In this step, you will need:

  • Enter a name.
  • Select the cloud
  • Choose the technology in the check type field (list of supported connectors for checking monitoring)
  • Depending on the technology chosen in the check type field, options to configure in the method will appear
  • Enter the health-check URL

When selecting the check type field, more settings may appear according to your need.

(Check type HTTP > method GET needs to configure header and value)

(Check type HTTP> POST needs to configure headers and post data with their own value, and select the post-body type)

You can register services according to the amount available in your plan. To learn more about plans, click here.

In the registration of new services in Oneplatform, the check type to perform the monitoring is configured through the “check type” field and it is selected one for each type of service in your environment.

After choosing the check type, there is the selection of the “method”.

Check below the check type available:

  • DB (data base)
    • Postgres
    • MySQL
    • SQL Server
    • MongoDB
    • Oracle
    • Cassandra
    • Neo4j
  • Cache
    • Redis
    • Memcache
  • HTTP
    • GET
    • POST
  • Queue
    • Kafka
    • RabbitMQ
    • SQS
  • Lambda
    • AWS
  • Search Engine
    • Elastic Search
    • Solr
  • Others
    • Ping
    • TCP

And you can also monitor by webhook.

Feature available along with application metrics for monitoring the performance and impact of deployments.

The graphic shows the response time between the 1P agent and the application through the determined route by the health check URL. Also presenting the deployments performed on the timeline, in order to monitor the impact on the application after the change.

It presents the data of the last 24 hours as a standard configuration and in the upper right corner it is possible to find tools to modify the data collection, such as the check interval and cut any oscillation necessary for more specific analysis.

Learn about the extra features in latency and deployments graphic

We have four basic functions in this functionality: select zoom, panning, reset zoom and export data. Learn more about each one below:

Selection Zoom: With the function activated, it is possible to select a part of the graphic and isolate a specific range. The plus and minus buttons are complementary and provide a general zoom of the graphic.

(selection zoom action)

Panning: used for selection and horizontal movement of the graphic, for a range ahead or past history.

(panning action)

Reset Zoom: symbolized with a house, it is used to adjust the graphic zoom to the last 24 hours pattern. Just click and the graphic will be adjusted automatically.

More: represented with 3 lines, they are actions to export the data presented in the graphic.

You can export the data set in the following formats:

  • SVG
  • PNG
  • CSV

(download action)

Learn about deployments graphic

When your development team releases a change in a service, it is extremely necessary to constantly monitor this application to know if there has been an improvement or worsening in its performance.

When inserting a deployment in your product application in 1P, we have the record presented on the graphic of the day and time when the change was made, therefore, identifying if there was an impact on the response time after the release.

The deployment record is also saved in the application’s timeline, along with incident notifications.

Setup

After signing up on the platform and setting the organization you want to manage, we will configure the cloud and the environment.

Every time you access the One Platform login page, you will see the Product page. To proceed with the configuration, you will need to access the menu in the sidebar.

 

First, you need to set cloud providers.

Click on “Clouds” in the sidebar.

A “NEW” button will appear, almost in the page header. Click this button.

Set the cloud by:

  • AWS
  • AZURE
  • Custom

(selecting the cloud)

 

When selecting the cloud you want to configure, more settings will appear according to your need.

(configuration for AWS Cloud)

(configuration for Azure Cloud)

 

Then, name the cloud you are configuring. (It doesn’t necessarily have to be the name associated with your product’s cloud).

You can register cloud providers according to the amount available in your plan. To learn more about plans, click here.

After setup the cloud provider, we have to configure the environments.

Click on “Environments” in the sidebar.

A “NEW” button will appear, almost in the page header. Click this button.

In this step, you will need:

  • Set a name for the environment
  • Assign to a cloud provider registered in the step above
  • Designate a tag

(new environment registration)

 

When assigning one of the registered clouds, new configurations will appear according to the need of the designated cloud.

(configuration for AWS Cloud)

(configuration for Azure Cloud)

 

Tip: ideally, the registered name and tag should be used as in your environment, for association and communication with One Platform.

You can register environments according to the amount available in your plan. To learn more about plans, click here.

With the registered clouds, environment and services, monitoring begins!

The registration of services and dependencies, can be performed individually as we will present in the step by step below.

It also can be done when registering the application, in which you register the application and then, on the same page, add dependencies (services) and addOns. The services registered by the application are also saved in 1P, and you can use the same service for more than one application.

To find out about the application registration, click here.

Tip: the same information requested in the individual registration, is also necessary if the service is registered via the application.

 

Below is the step by step to register individual services:

Click on “Services” in the sidebar.

A “NEW” button will appear, almost in the page header. Click this button.

In this step, you will need:

  • Enter a name.
  • Select the cloud
  • Choose the technology in the check type field (list of supported connectors for checking monitoring)
  • Depending on the technology chosen in the check type field, options to configure in the method will appear
  • Enter the health-check URL

When selecting the check type field, more settings may appear according to your need.

(Check type HTTP > method GET needs to configure header and value)

(Check type HTTP> POST needs to configure headers and post data with their own value, and select the post-body type)

You can register services according to the amount available in your plan. To learn more about plans, click here.

This is where we find the Resilience Matrix with the information generated by One Platform (1P).

Click on “Products” in the sidebar.

A “NEW” button will appear, almost in the page header. Click this button.

In this step, you will need:

  • Enter a name
  • Description field
  • Select the teams that will manage the product

Tip: the registration of Teams can be done in the product registration.

After creating a product, it is necessary to configure the applications to complete the resilience matrix and start monitoring.

To insert the applications in your product, click on “new resource” and then, a pop up will appear with 3 types of application registration, differentiating the type of monitoring that will be done:

Internal Application: You need to have the agent installed on your cloud. You can also add dependencies.

  • Agent required
  • Allow dependencies

External Application With Dependencies: You need to have the agent installed on your cloud. You can also add dependencies.

  • Agent required
  • Allow dependencies

Application Monitoring via Webhook: We’ll register hits and failures received via webhook.

  • No agent
  • No dependencies

Setup Application: Internal Monitoring

A new popup will open on the current screen. In this step, you will need to:

  • Choose an environment
  • Enter a name for the application
  • Insert healthcheck URL
  • Select the method
  • Fill ‘validations string’
  • Set the interval and timeout (they are with default configuration, can be changed if necessary)

With these settings, it is available to create an application for the registered product. They are mandatory information.

When selecting the method field, more configurations may appear according to your need.

Setup Application: External application with dependencies

A popup will open on the current screen, similar to the internal application registration screen, as presented in the topic above. In this step, you will need to configure:

  • Choose an environment
  • Enter a name for the application
  • Insert healthcheck URL
  • Select the method
  • Fill ‘validations string’
  • Set the interval and timeout (they are with default configuration, can be changed if necessary)

What is external monitoring and when to enable it?

The external monitoring feature works by monitoring through an external agent (as if it were a user without access to the cloud provider) to generate the data and the resilience matrix.

Setup Application: Application Monitoring via Webhook

The applications registration monitored via webhook in 1P is simple and fast.

In this step it will be necessary to:

  • Select the Environment
  • Choose an application name that will be used for identification in 1P

After registering the application with monitoring via webhook, you will be directed to the application page created.

Click on “Teams” in the sidebar.

A “NEW” button will appear, almost in the page header. Click this button.

In this step, you will need:

  • Enter a name
  • Choose the forms of notification for the selected team (call rotation/escalation will be included)

How to add work team members to One Platform (1P)

Click on “Users” in the sidebar.

A “NEW” button will appear, almost in the page header. Click this button.

In this step, you will need:

  • Email address
  • Name
  • Role

Description of each role available:

  • Owner: this role executes all the actions in 1P, including changes in clouds, environments and users.
  • Admin: this role will be able to manage products, services and dependencies. Do not have access to modify users, teams, clouds and environments.
  • Member: it is a read-only access. It’s not able to modify any configuration in 1P.

After adding a user, you can add them to a team to manage the product. You can register users according to the amount available in your plan. To learn more about plans, click here.

Cell phone number validation is required to enable several functions in 1P, such as notifications integration via WhatsApp and full operation of Call Rotation, function for workers on duty and alternating scales of teams.

Each user must individually perform cell phone validation in the platform.

Click on “Account” in the sidebar.

Then, you will have access to the page with your registration data. Fill in your name, enter your cell phone number, then click on save.

The “Send verification code” button will be enabled after saving the registration data, before that it will be disabled for validation.

Tip: the registered cell phone number must be the same used for WhatsApp, calls and SMS.

 

After saving, click on the “send verification code” button to receive the verification code via SMS.

A message box will appear on the platform page requesting the 4-digit verification code.

If you don’t receive it, the verification code can be resent via this message box.

Then, you will receive an SMS on your cell phone with a message similar to the one below:

To conclude, just enter the 4 digits you received via SMS on your cell phone in the message box.

After completing all the steps, the “verified phone number” information in green will be displayed in your registration data to symbolize that the validation was successful.

The user on the platform will be able to make full use of the notification and Call Rotation functionalities.

In One Platform it is possible to generate a status page about your applications and dependencies registered in your digital product.

This page is modular and customizable according to your needs or your customer. It can be configured which applications and dependencies you want to monitor in a macro way (only the status of the application in the total set) or if you prefer to present the status of each individual component.

You can register as many status pages as you want, with different components for a given team, customer or objective.

On the status page, it is possible to follow the current status of the application or dependency, informing if it is Operational, Partially Operational or Non-Operational along with the average response time of the respective component. Helping to understand if, in addition to being operating normally, the time that the component is taking to answer the end user.

You can also track, in the last 7 days, whether there have been incidents on a given day and their current status, making it public if the incident has already been resolved or if the status remains. Only application incidents and dependencies that are configured to be displayed are shown.

Internal metrics or sensitive operating information are not presented for the engineering and product team, and may only be monitored in the Resilience Matrix.

The status page feature is available for use according to your 1P plan. If it is not released, talk to our customer service in the chat.

To create a status page, go to the left sidebar and click on Status Page.

On the next screen, there will be a listing of all status pages already configured (if any).

To create a new public status page, click on NEW, the green button in the upper right corner.

A new page configuration screen will open. In this step, you customize name, url and the components that will be displayed in this particular status page.

First enter a name that will be displayed on your Status Page. Below are comparative images of configuration and presentation.

By default, we use the same name as the page to create the URL slug, but it can be customized as you wish. It is not mandatory to have the same name and slug.

(1P configuration)

(displayed on the public status page)

 

Below the name and slug, the status page components are displayed.

The components are divided and configured by groups, and in these groups are shown the applications and dependencies desired for each separation.

See below a model of how it was configured in 1P and how it looks:

(configuration made in 1P)

(components shown on the status page)

 

In this step, we have two blocks: My Resources x What will be shown in your Status Page.

My Resources field presents your products registered in 1P, with the names pre-configured on the application pages.

What will be shown in your Status Page, well, is what will definitely be presented and made public.

 

Click on ADD Group and a component icon will be placed in the block on the right. Name the group in the available field, and drag an application or dependency under the created name.

This configuration works as a drag-and-drop, that is, just select, drag the components from one block to another and drop.

After configuring as desired, click on Save at the bottom of the page.

Automatic saving is not done.

 

The public status page URL created will be generated after performing the steps described above and the name and slug will be available right below.

Teams

Click on “Teams” in the sidebar.

A “NEW” button will appear, almost in the page header. Click this button.

In this step, you will need:

  • Enter a name
  • Choose the forms of notification for the selected team (call rotation/escalation will be included)

In the Teams field in the platform, there are options of communication channels in which they want to receive the related notifications that may vary from time to time.

With that in mind, we also developed notifications via Telegram, for a private chat or a group.

Click on “Teams” in the sidebar.

If you want to create a new team, just click on the “new” button that will appear in the upper left corner of the screen.

For teams already registered, just access the team and go to the notifications tab, in the upper bar.

Select the option that has the Telegram icon, and enter the ID of the private chat or group you want to notify.

Each team can have only one telegram ID for notifications, however, the same telegram ID can be used on other teams to centralize notifications according to the needs of its internal team.

If you need help finding your telegram ID, click here.

Telegram ID is different for each private chat and also for groups. To find out where to get this information, follow below:

In a private chat

Access the telegram app on your smartphone.

Search for “GlorfindelBot” in the search field:

Select the option with the name “1P” and the 1P logo as shown in the image above, then start a chat.

Type the command: / mychatid

You will receive a similar response to this.

Example template: the chat_id is: XYZQKHRT

In which, XYZQKHRT is the chat_id, it is with this code that OnePlatform will be able to identify which chat you want to receive notifications.

In a group

You can create or use an existing group

Access the telegram app on your smartphone.

Search for “GlorfindelBot” and add it to the desired group

Type the command: /mychatid

You will receive a similar response to this.

Example template:  the chat_id is: -XYZQKHRT

-XYZQKHRT is the chat_id, it is with this code that OnePlatform will be able to identify where you want to receive notifications.

The group’s chat_id starts with a dash, and you can’t forget when adding it to OnePlatform.

In the option “Teams” in the platform, we have options of communication channels in which they want to receive the related notifications that may vary from team to team.

With that in mind, we also developed notifications via Slack, for a private chat or a channel.

Click on “Teams” in the sidebar.

If you want to create a new team, just click on the “new” button that will appear in the upper left corner of the screen.

For teams already registered, just access the team and go to the notifications tab, in the upper bar.

Select the option that has the Slack icon, and click on “install our slack app first”.

A window will open with some Slack settings.

In the upper right corner, you can select which workplace to notify. Then, you can see which executions will be allowed, and finally, select which channel or private chat you want to send the notifications to.

Click on “allow”, and it will be automatically configured in 1P with the name of the selected workplace and channel.

After setting up, just click on “save” at the end of the options. When the first incident occurs, the notification will be sent via slack.

In the option “Teams” in the platform, we have options of communication channels in which they want to receive the related notifications that may vary from team to team.

With that in mind, we also developed notifications via Microsoft Teams, for a private chat or a channel.

Click on “Teams” in the sidebar.

If you want to create a new team, just click on the “new” button that will appear in the upper left corner of the screen. 

For teams already registered, just access the team and go to the notifications tab, in the upper bar. Select the option that has the Microsoft Teams icon, and click on “Integration instructions”.

A popup will open with directions to settings in the Microsoft Teams.

Click on “incoming webhook connector details” and then a new tab will open in your Microsoft browser.

You must be registered in Microsoft Teams to proceed with the configuration. You will be asked to log in if you do not automatically access it.

Click on “add to a team”, select the channel or team and click on “configure a connector”.

Then, a pop-up will open on your Microsoft tab.

Insert the name “e.g. One Platform” in the field that is available, as shown in the image above.

Click on create.

Copy the generated URL by clicking on and then click on “Done”.

If the tab does not close automatically, you can close the tab manually and return to OnePlaform tab, where we started the configuration.

Paste the URL copied from the previous step in the field “webhook url” available below item 2 and finish by clicking on “Done”.

Then, the required field for notification via Microsoft Teams will be filled in automatically. 

Just click on “save” and the configuration is ready.

 

You will receive a confirmation message on the channel or chosen team to notify on Microsoft Teams to ensure that the connection was successful.

Increasingly expanding the notification channels, to improve the efficiency of your development team for alerts in case of incidents, now you can also enable notifications via Whatsapp.

Before starting the setup for the teams, it is necessary that the users registered in the team have their cell phone number validated on the platform. If not, you will not receive the notification. 

To do cell phone validation, just click here.

To configure Whatsapp as a notification channel, just follow the steps below:

Click on “Teams” in the sidebar.

Select the team that will receive alerts via Whatsapp

When accessing the settings of the selected team, go to Notifications on the upper bar and enable the option “Send a notification to WhatsApp”. After enabling this function, you can select which team members will be notified and then, click on save.

Notifications are sent only to individual contacts, there is no option to send notifications to groups. Remembering that only users who have their cell phone number validated will be able to receive alerts.

The “Call Rotation” feature is designed for the distribution of notifications in case of on-call workers, team escalation and notification via SMS and call.

Call Rotation is configured per team. It will be activated in case of an incident for all products that are monitored by the determined team.

It works in parallel with the pre-configured notification channels in the “Notifications” tab; however, Call Rotation is exclusive for SMS and phone call notifications.

Before starting the Call Rotation escalation configuration, it is necessary that the users registered in the team have their cell phone number validated on the platform. If they do not, they will not receive the call or SMS.

To do cell phone validation, just click here.

How to configure Call Rotation

As previously mentioned, the Call Rotation feature is configured by the team. Then, you need to access the team to start the configuration.

Below are all the ways to access the settings of the desired team.

Access to the team via Product:

Click on “Product” in the sidebar. Then, select the product that has the team you want to configure.

In the upper bar, next to “Availability”, where your Resilience Matrix is shown, there is a “Teams” tab. Select the desired team in this tab and you will be redirected to the team configuration.

Tip: if you access the team through the Product, it does not mean that the Call Rotation escalation will be configured only for the selected Product. The configuration is made by each team, and if that team is assigned to another product, an incident notification for the two or more products will be inserted in the Call Rotation escalation. This access is only to locate the desired team.

 

Access to the team via the sidebar:

Click on “Teams” in the sidebar. Then, select the team you want to configure.

In the upper bar, select the tab named “Call Rotation” next to “Notifications”.

Reminder: Call Rotation escalation will be configured for all products monitored by this team.

Learning the ways to set up the team’s escalation

The escalation is created from “events” that can be determined by day, week or month.

You can create an individual event for a day, by clicking on the date on the calendar beside and/or holding and dragging the mouse cursor from the start date to the end date creating events with repetition.

It can be one day, two days, four days, a full week, fifteen days or the whole month. As needed, according to your team’s demand.

 

After selecting the desired dates, we will complete the event information. The following information will always refer to one day! If you have selected more dates, the event will be repeated.

Thus, resulting in an event with daily, weekly or monthly repetition with the information of a day for the team. Similar to Google Calendar.

 

Configuring the event

After following the steps and recommendations already described, your OnePlatform page will look similar to the screenshot below:

Add the team’s start and end time according to the daily schedule. The time format is 24h. If the escalation is at night, just add the time corresponding to the night and morning that the system automatically distributes the event from one day to the next.

Step Group are the people who will be responsible for responding to incidents on this escalation. Just select which group you want to assign notifications to.

If it is the first time you are configuring Call Rotation, it is necessary to create a Step Group by clicking on .

To create the Step Group: choose the first employee of the escalation to be notified, select from the SMS or Voice Call options and configure the time interval that the alert will be sent and for how long this first employee should be alerted until following the flow.

Add another employee of the escalation in “add step”, following the same settings and activation options.

Tip: only users with the verified cell phone number will be available. If the employee does not appear, it is because they need to check the cell phone number.

Tip: if you want to notify the same employee via SMS and Voice Call, just add it twice and select a notification method for each step.

The Step Group configuration is individual for each customer and can have the number of employees needed.

Illustrative image to present the Step Group configuration.

To finish the Step Group configuration, name the flow created and then, click on save.

You can also choose the color to differentiate one escalation from the other, edit or delete the Step Group.

This Step Group will be saved in Call Rotation to configure more events using the same flow.

 

Once the dates, time and employees for the escalation have been configured, just click on create to register the Call Rotation events.

Illustrative image of the calendar after the creating the events.

In the Teams field in the platform, we have channel options to receive incident notifications on different internal and external communication platforms.

With that in mind, we also developed notifications via Google Chat, for a private chat or a group.

 

Click on “Teams” in the sidebar.

If you want to create a new team, just click on the “new” button that appears in the upper left corner of the screen.

For teams already registered, just access the team and go to the notifications tab on the upper bar.

Select the checkbox on the option that has the Google Chat icon, and add the webhook link provided when creating the bot in the message box on the side.

Then just click on save and the incident notifications via Google Chat are configured.

Learn how to configure a bot in Google Chat, click here.

It is worth remembering that Google Chat is a newer feature of Google and is different from Google Hangouts.

To proceed with the configuration, you must have Google Chat enabled in your Google account. 

Enabling Google Chat is simple, just access the link on the side https://mail.google.com/chat/u/0/ and it will be done automatically. If you can’t, check the support link on how to enable it in your account.

Google Support Link for Google Chat, click here.

Configuring the bot on private chats or groups

Enter Google Chat, in the left sidebar find the chat you want to create the bot and click on the arrow next to the chat name, .

 

Then click on “Manage webhooks”. A message box will open like the image below.

Fill in the name that will be given to the webhook and, if you have one, a URL with the image that will be used as an avatar for the bot. Then click on save.

The message box will be updated and the connector will be ready to use, copy the URL by clicking on .

This URL is used to enable you to receive incident notifications on your OnePlatform team, to learn how, just click here

Users

How to add work team members to One Platform (1P)

Click on “Users” in the sidebar.

A “NEW” button will appear, almost in the page header. Click this button.

In this step, you will need:

  • Email address
  • Name
  • Role

Description of each role available:

  • Owner: this role executes all the actions in 1P, including changes in clouds, environments and users.
  • Admin: this role will be able to manage products, services and dependencies. Do not have access to modify users, teams, clouds and environments.
  • Member: it is a read-only access. It’s not able to modify any configuration in 1P.

After adding a user, you can add them to a team to manage the product. You can register users according to the amount available in your plan. To learn more about plans, click here.

Webhook

The webhook credentials are determined by organization in 1P and to access, just click on the name of the organization below your profile photo in your user panel in the sidebar.

(in this case, the organization is Elven Works)

 

Click on the button symbolized with a plus icon as in the image below.


A message box will open which you must choose the type of webhook that will be registered and name it to identify your credential.

Click on the “generate integration token” button and wait for the message box to process.

Hits/Failure credential

After following the previous steps, in a few seconds your credential will be created and an image similar to the one below will appear:

(illustrative image, some information may vary)

 

Your credential is created and ready to use. Click on the icon  to have the curl command copied to your clipboard.

Your token will be registered inside your organization in 1P in case you need to consult, edit or remove it.

 

Then, you can paste and execute the command in the terminal of your choice:

(illustrative image, some information may vary)

 

Your token for activating the API will be generated, similar to the image below:

(illustrative image, some information may vary)

Deploy Credential

After following the steps outlined in “Creating Webhook Credentials”, your message box will close and your credentials page will reload. Displaying only the description of the credential, as the image below:

 

The token generated by the credential is registered on the application page in your product. Also, you will have a token for each application you want to update.

Editing Webhook credentials

By accessing your list of credentials it is possible to edit an already created token.

Click on the icon represented by a pencil as in the image below to edit the credential.

After enabling editing, a message box will appear showing the credential name and current token.

Then, click on “generate new token” and wait for the platform to generate a new credential.

After generating a new credential, it is necessary to redo the previous credential setting steps to execute the command on any terminal of your choice and obtain the new token.

WARNING

After generating a new credential, the old token will be invalidated.

If necessary, you can also change the name of the credential, however new credentials will be generated whenever the name is changed.

To delete a credential click on the button

Access the application you want to configure monitoring, and click on the “Hits and Failures API” button.

Then, a popup will open on the screen containing the information that will be used in the communication between your environment and 1P, for data analysis, development of the resilience matrix, incident control and other features available on the platform.

Just replace the <token> and follow the popup instructions to finish the configuration and start monitoring.To learn more about registering credentials and granting access to the token, just click here.

Below is an example of a script for simple monitoring, pressing 1 or 2 to send OK or Failure.

The purpose of this example is only to demonstrate how calls should be made to the webhook monitoring created by 1P.

The script collects the data in your application or dependency, interprets the result and delivers it to 1P according to the instructions in the “Hits and Failures” box presented on the page of your registered application in OnePlatform.

Example:

#!/bin/bash

echo "Failure ou OK?"
echo "1. Failure"
echo "2. OK"
read status
echo "-------------"

token=`curl --request POST \
        --url https://apis.elven.works/external/auth/v1/client/<Your Company URL> \
        --header 'Content-Type: application/json' \
        --data '{
          "client_id": "<YOUR INFORMATION HERE>",
          "client_secret": "<YOUR INFORMATION HERE>"
         }' | sed 's/{"access_token":"//g' | sed 's/","expires_in":300,"token_type":"Bearer"}//g'`


if [ $status == 2 ]; then
echo "OK"
curl -X POST -H 'Content-type: application/json' -H "Authorization: Bearer $token " https://apis.elven.works/external/monitoring/v1/hits --data '{"latency": 100000, "service": <YOUR SERVICE ID HERE>, "organization": "<YOUR ORGANIZATION ID HERE>"}'
fi

if [ $status == 1 ]; then
echo "Failure"
curl -X POST -H 'Content-type: application/json' -H "Authorization: Bearer $token " https://apis.elven.works/external/monitoring/v1/failures --data '{"issue": "<Your message>", "service": <YOUR SERVICE ID HERE>,"organization": "<YOUR ORGANIZATION ID HERE>"}'
fi

Suitable for Python 3 or above.

Below is an example of a script for simple monitoring, pressing 1 or 2 to send OK or Failure.

The purpose of this example is only to demonstrate how calls should be made to the webhook monitoring created by 1P.

Example:

import requests

print(‘FAILURE OR OK?’)

print(‘TYPE 1 FOR FAILURE’)

print(‘TYPE 2 FOR OK’)

 

status = int(input(‘SELECT 1 OR 2:’))

 

choice = status

 

print(‘—‘, ‘the option to be performed is: ‘, choice, ‘—‘)

 

token_headers = {‘Content-Type’: ‘application/json’}

 

token_url = ‘https://apis.elven.works/external/auth/v1/client/<Your Company ID>

 

token_payload = {

    ‘client_id’: ‘<YOUR INFORMATION HERE>‘,

    ‘client_secret’: ‘<YOUR INFORMATION HERE>

}

 

req_token = requests.post(

    url=token_url,

    json=token_payload,

    headers=token_headers

)

 

token = req_token.json()[‘access_token’]

 

req_headers = {‘Content-Type’: ‘application/json’,

               ‘Authorization’: ‘Bearer ‘ + token}

 

req_url =  ‘https://apis.elven.works/external/auth/v1/client/<Your Company ID>

 

req_payload = {‘service’: <YOUR SERVICE ID HERE> ,

               ‘organization’: ‘<YOUR ORGANIZATION ID HERE>‘}

 

if (status == 2):

    print(“HITS”)

    hits_latency = {‘latency’: 100000}

    req_payload.update(hits_latency)

    hits = requests.post(

        url=req_url + ‘hits’,

        json=req_payload,

        headers=req_headers

    )

    print(req_payload)

    print(hits.json())

 

if (status == 1):

    print(“failures”)

    failures_issue = {‘issue’: ‘Error message’}

    req_payload.update(failures_issue)

    hits = requests.post(

        url=req_url + ‘failures’,

        json=req_payload,

        headers=req_headers

    )

    print(req_payload)

    print(hits.json())

Below is an example of a script for simple monitoring, pressing 1 or 2 to send OK or Failure.

The purpose of this example is only to demonstrate how calls should be made to the webhook monitoring created by 1P.

Example:

Write-Output(“FAILURE OR OK?”)

Write-Output(“TYPE 1 FOR FAILURE”)

Write-Output(“TYPE 2 FOR OK”)

 

$status = Read-host “SELECT 1 OR 2 “

 

Write-Output(“—“,”the option to be performed is: “, $status, “—“)

 

$headers=@{}

$headers.Add(“content-type”, “application/json”)

$response = Invoke-WebRequest -Uri ‘https://apis.elven.works/external/auth/v1/client/<Your Company URL>’ `

                -Method POST `

                -Headers $headers `

                -ContentType ‘application/json’ `

                -Body ‘{“client_id”: “<YOUR INFORMATION HERE>”,”client_secret”: “<YOUR INFORMATION HERE>”}’

 

$StatusCode = $Response.StatusCode 

Write-Output “Get Token 1P – código resposta: $StatusCode” 

$token = ($response.Content | ConvertFrom-Json).access_token

  

$Date = Get-Date

$headers.Add(“authorization”, “Bearer $token”)

         

$invoke_headers =@{

    authorization = “Bearer $token”

}

$invoke_headers.Add(“content-type”, “application/json”)

 

if($status -eq 2)

{

  Write-Output(“HITS”)

  $HITS = Invoke-WebRequest -Uri ‘https://apis.elven.works/external/monitoring/v1/hits’ `

          -Method POST `

          -Headers $invoke_headers `

          -ContentType ‘application/json’ `

          -Body ‘{“latency”: 100000, “service”: <YOUR SERVICE ID HERE>, “organization”: “<YOUR ORGANIZATION ID HERE>”}’

  Write-Output(“$HITS”)

}

 

if($status -eq 1)

{

  Write-Output(“FAILURE”)

  $FAILURE = Invoke-WebRequest -Uri ‘https://apis.elven.works/external/monitoring/v1/failures’ `

             -Method POST `

             -Headers $invoke_headers `

             -ContentType ‘application/json’ `

             -Body ‘{“issue”: “ERROR MESSAGE”, “service”: <YOUR SERVICE ID HERE>, “organization”: “<YOUR ORGANIZATION ID HERE>”}’

  Write-Output($FAILURE)

}

Accessing the page of the desired application, click on the icon similar to this: , right below the name and information about the application.

Then a message box will open, where you can:

  • Register in Timeline: to register the deploy manually in the latency and deployment graph timeline. Updating date and time.
  • Deploy by Webhook: to register the deploy in the timeline when the application is updated. No need for manual registration.

In this case, we will deploy via webhook.

By clicking on the “Deploy by Webhook” button, a new message box will appear, where you will have to choose the credential already registered in the organization.

When selecting the desired credential, your message box will be reloaded with the token referring to the application. As in the image below:

To insert the deploy in the latency and deployments graph timeline, just use the curl displayed when updating the application.

The description will be registered in the incidents timeline as default “[application name] is DEPLOYED”.

en_US