panel sapsan cloud pages order list php

Рассылка извещений о создании/изменении заказа на перемещение

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Сергей Лебедев

В статье рассматриваются настройки системы для рассылки извещений о создании и изменении заказов на перемещение запасов. При формировании рассылки используются возможности SAP-Office как для отправки сообщений внутренним SAP-пользователям, так и для отправки на внешние адреса электронной почты (e-mail).

Формирование выходных документов для рассылки извещений

Стандарт системы рекомендует формировать выходные документы с использованием техники условий для реализации следующих функций:

В случае необходимости уведомления поставщиков о создании или изменении заказов на закупку, следует использовать следующие стандартные возможности отправки выходных документов:

Нюансы настройки для этих вариантов отправки описаны в Ноте 191470.

Возможность выбора выходных документов может быть также использована и для уведомления завода-поставщика, в случае создания заказа на перемещение запаса. Необходимость в таком уведомлении возникает, например, когда сотрудник завода-получателя создаёт заказ на пополнение своих запасов и необходимо уведомить завод-поставщик об этой новой потребности.

Но возможен и другой вариант: когда за создание заказа на основании заявки от получателя ответственность возложена на сотрудника завода-поставщика. В качестве такого примера можно взять процесс, в котором сотрудник завода-поставщика должен создавать заказ на перемещение только тогда, когда на заводе-поставщике появляется «свободный запас» затребованной номенклатуры. В этом случае извещать о создании заказа нужно будет уже сотрудников завода-получателя.

В статье показаны настройки системы, которые обеспечат автоматическую рассылку уведомлений о создании или изменении заказа на перемещение запаса. Список получателей уведомления будет определяться в соответствии с выбранным в заказе заводом-получателем. Для реализации данной функции в бизнес-процессе распределения запасов необходимо принять ограничение: один заказ на перемещение запаса должен содержать позиции только для одного завода-получателя. Т.е. в одном заказе на перемещение запаса не должно быть разных заводов-получателей.

При создании или изменении заказа на перемещение, тем SAP-пользователям, для которых настроено уведомление, будет приходить срочное сообщение в SAP-Office (Рис. 1).

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Рис. 1. Уведомление SAP-пользователя в SAP-Office

В случае указания в качестве получателя уведомления внешнего e-mail адреса, на этот адрес будет отправлено автоматически созданное письмо (Рис. 2).

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Рис. 2. Уведомление по электронной почте в MS Outlook

Для обеспечения формирования уведомлений сотрудникам завода-получателя о создании и изменении заказа на перемещение потребуется выполнить следующие настройки:

Создание таблиц и последовательностей доступа

Как было отмечено выше, письмо-извещение представляет собой выходной документ к заказу на перемещение. Ниже приведены шаги настройки для автоматического выбора выходных документов извещений к заказу.

Шаг 1. Для того, чтобы настроить списки получателей уведомлений в разрезе заводов-получателей, необходимо расширить коммуникационные структуры для выбора выходных документов к заказу на поле ZZWERKS, в которое будет передаваться код завода из первой неудаленной позиции заказа на перемещение. Расширение этих структур необходимо, т.к. стандарт системы не предлагает возможности настройки выбора выходных документов в зависимости от завода-получателя. Согласно Ноте 39462 добавим поле ZZWERKS в структуры KOMKBEA и KOMB. Алгоритм заполнения поля необходимо реализовать в USEREXIT_KOMKBEA_FILL (см. группу функций VCOM).

Шаг 2. Для того, чтобы иметь возможность использовать новое поле ZZWERKS при создании собственных таблиц условий, необходимо добавить его в каталог полей для приложения «Закупки». Для этого необходимо выполнить ведение ракурса V_T681F в транзакции SM30 для ключей:

После добавления поля в каталог становится возможным его использование для создания собственных таблиц доступа.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Рис. 3. Создание таблицы условий 501 для выбора выходного документа без учета вида заказа

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Рис. 4. Создание таблицы условий 502 для выбора выходного документа с учетом вида заказа

При создании таблицы следует помнить, что для пользовательских таблиц стандарт системы выделил диапазон номеров с 501 по 999.

Шаг 4. Используя созданные таблицы, настроим последовательность доступа, позволяющую выбирать выходной документ в зависимости от отпускающего завода, завода-получателя и вида заказа. Для этого в транзакции M/50 выполним следующие настройки (Рис. 5).

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Рис. 5. Создание последовательности доступа

Созданная последовательность доступа позволит определять необходимость рассылки уведомлений сначала в зависимости от вида документа, завода-поставщика и завода получателя (таблица 502). Затем, если таких условий не найдено, выполняется поиск по 501 таблице без учета вида документа.

В настройках передачи значений полей видно, что для сравнения полей таблицы доступа с коммуникационной структурой KONKBEA используется заполняемое по собственному алгоритму поле ZZWERKS (Рис. 6).

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Рис. 6. Правила сравнения полей доступа с коммуникационной структурой

Созданную последовательность доступа будем использовать для выбора выходных документов-извещений о создании или изменении заказа.

Создание вида выходного документа для извещения о создании заказа на перемещение

Содержание текста и заголовка письма рассылки обеспечивается настройкой вида документа. Создадим два вида выходных документов: один будет содержать текст извещения о создании заказа на перемещение, другой будет содержать текст уведомления о внесении изменений в заказ на перемещение. Ниже приведена последовательность шагов процесса создания новых видов выходных документов для уведомлений и их назначения заказу на перемещение:

Шаг 1. Для извещения о создании заказа создадим вид документа ZMCR «Извещение о создании». Создание новых видов выходных документов выполняется в настройке IMG по пути «Управление материальными потоками > Закупки > Выходные документы > Управление выводом > Виды выходных документов > Определение видов ВыходДокум для заказа на закупку > Ведение видов выходных документов для заказа на поставку» (Рис. 7).

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Рис. 7. Создание вида выходного документа. Вкладка «Общие данные»

На вкладке «Общие данные» указываем созданную ранее последовательность доступа – это обеспечит автоматический выбор выходного документа к заказу на основании настроенных записей условий – т.е. для заданных комбинаций вида документа, отпускающего и принимающего заводов.

Также на этой вкладке запрещаем многократную отправку документа – сообщение о создании должно приходить только один раз в момент первого сохранения заказа.

Устанавливаем для этого документа флаг «Независимый от партнёра выходной документ». Установка флага означает, что выбор выходного документа будет осуществляться независимо от ролей партнеров в заголовке заказа. Получатель сообщения будет определяться не на основании ролей партнёров, а из настройки записей условий в транзакции MN04.

Указание программы замены символов текстовой переменной позволит динамически при формировании сообщения указывать в тексте письма и в заголовке требуемые значения из документа закупки, такие, например, как номер заказа.

На следующей вкладке (Рис. 8) укажем значения по умолчанию, которые будут выбираться при добавлении записи условий в транзакции MN04. Зададим момент отправки сообщения – «Немедленная отправка при сохранении приложения», и средство отправки – «простой E-mail». Под понятием «простой E-mail» в SAP принято понимать отправку письма через SAP-Office (см. транзакцию SBWP).

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Рис. 8. Создание вида выходного документа. Вкладка «Значения по умолчанию»

Для ведения заголовка и текста сообщения необходимо в настройке перейти к подпапке «Заголовок и тексты электронной почты». Создаём запись для языка «RU», которая будет являться заголовком отсылаемого письма (Рис. 9).

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Рис. 9. Создание вида выходного документа. Папка «Заголовок и тексты электронной почты»

Затем выполняем ввод текста письма, который будет выглядеть как вложение в электронном e-mail письме или как обычный текст письма SAP-Office. Для этого переходим в режим ввода длинного текста по кнопке panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php(Рис. 10).

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Рис. 10. Ведение текста письма

Выражения в заголовке и в тексте, окруженные с обеих сторон символами «&», являются переменными сообщения и будут заменены в процессе формирования письма соответствующими значениями из документа закупки. Так переменная &EKKO-EBELN& будет заменена на номер заказа. В заголовке достаточно ввести переменную для замены с клавиатуры, а для вставки переменной в текст письма нужно нажать на кнопку panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list phpи выбрать вставку символа (Рис. 11).

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Рис. 11. Вставка переменной в текст письма-уведомления о создании

Замену переменных на конкретные значения будет осуществлять программа замены символов текстовой переменной, которую мы указали в общих данных настройки выходного документа – см. рис. 7. В выходных документах к заказу на закупку для этих целей используется стандартная подпрограмма TEXT_SYMBOL_REPLACE в программе SAPMM06E.

Для указания программы обработки вывода выходного документа необходимо в настройке перейти к подпапке «Подпрограммы обработки» (Рис. 12).

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Рис. 12. Программа обработки вывода выходного документа

Для отсылки сообщений через SAP-Office следует использовать стандартную программу обработки RSNASTSO, подпрограмму SAPOFFICE_AUFRUF. Если необходимо отсылать письмо на внешнюю почту, то специалистом по базису должны быть выполнены соответствующие настройки SAPConnect. Очередь отправляемых на внешнюю почту сообщений

Если хотите прочитать статью полностью и оставить свои комментарии присоединяйтесь к sapland

Источник

Panel sapsan cloud pages order list php

SAP Sales & Service Cloud, a.k.a. as SAP C4C, is SAP’s on-demand cloud-based Customer Relationship Management, it consists of SAP Cloud for Sales and SAP Cloud for Services.

Note: Hybris Commerce platform and SAP Sales & Service Cloud are two distinct products. The support of Hybris Commerce platform is planned, but not yet available.

Integration Scenario

For SAP Sales & Service Cloud the following integration scenarios are possible:

The different scenarios contain the following exceptions and point-to-point connections:

*) Monitoring content was extended with later support packages (see monitoring template page for details)

To find out which IDocs, WebServices and integration flows are relevant for your SAP Sales & Service Cloud scenario please refer to:

Technical Prerequisites

The following technical prerequisites have to be met in order to monitor this scenario:

Available Monitoring Content

SAP Solution Manager can collect two different kind of errors happening in SAP Sales & Service Cloud:

Monitoring Template: Cloud (SAP C4C)

Number of errors detected in SAP Sales & Service Cloud. The exceptions are retrieved from SAP Sales & Service Cloud via the central Exception Management in SAP Solution Manager.

Number of errors detected in SAP Sales & Service Cloud within the last 24 hours. The exceptions are retrieved from SAP Sales & Service Cloud via the central Exception Management in SAP Solution Manager.

Connect Cloud Service

Please, provide a valid admin page (see the wiki for details)

Preparations in SAP Sales & Service Cloud

Create a Communication Arrangement in SAP Sales & Service Cloud

Connect Cloud Service to SAP Solution Manager

The Cloud Services configuration is now accessible from the SAP Solution Manager Configuration (SOLMAN_SETUP) в†’ Managed Systems Configuration в†’ Tab ‘Cloud Services’.

Create Cloud Service:

The second step is to create the end-point for the cloud service.

Create the End-Point:

Monitoring Configuration

Step 1: Configure Exception Management

After the basic configuration you now have to configure Exception Management, as the exceptions collected via Exception Management and stored in the central exception store are the basis for the Integration Monitoring data collection.

Configuration for SAP Sales & Service Cloud Errors

For SAP Sales & Service Cloud the exceptions are collected in two different log stores. One log store collects exceptions for application errors in the SAP Sales & Service Cloud system and the other one exceptions for system errors.

To access the Exception Management setup please go to transaction SOLMAN_SETUP в†’ Application Operations в†’ Exception Management

1 In the step ‘Define Scope’ select the tab ‘Cloud Services’ and your SAP Sales & Service Cloud system. If you didn’t configure the system before make sure to select ‘All Cloud Services’ in the view drop-down. Click on ‘Configure’ or click ‘Next’ two times. You will enter the step ‘Exception Configuration’.

2 Click ‘Add / Configure Log Store’. Select if you want to create a log store for Application or System errors in the SAP Sales & Service Cloud system.

3 Select the fields for filtering for your log store. The filters differ for inbound and outbound SAP Sales & Service Cloud messages. The following filter fields are available:

4 Maintain the filter values for the fields in the Filter Definition panel under the log stores table. You can also add, remove or change filter fields and values later on in the area. You can use different operators for your filter value. You can add more than one filter filed combination per log store. To add an additional filter field combination click on the button ‘Add Filter’ in the ‘Configured Log Stores’ panel.

5 You should not set up the monitoring for the exceptions in the Exception Management. If you activate the monitoring here, you will receive an alert (and if set up this way an email) for every single exception in the application log. Instead we will use Interface and Connection Monitoring to monitor the central exceptions store for exceptions.

Step 2: Configure Interface and Connection Monitoring

The last step is the configuration of Interface and Connection Monitoring. The Interface and Connection Monitoring setup can be accessed via SAP Solution Manager Configuration (SOLMAN_SETUP).

Configuration for Monitoring Template: Cloud (SAP C4C)

To access the Integration Monitoring setup please go to SAP Solution Manager Configuration (SOLMAN_SETUP) в†’ Application Operations в†’ Integration Monitoring в†’ Interface and Connections.

Navigate to the step ‘Define Scope’. You can create a new scenario for the SAP Sales & Service Cloud monitoring or use an existing one. Make sure the on premise system for the SAP Sales & Service Cloud scenario and the Cloud Service created for SAP Sales & Service Cloud is part of the Interface and Connection Monitoring scenario.

Create the Interface Channel:

Maintain the Interface:

Источник

Panel sapsan cloud pages order list php

В связи с успешным завершением тестового режима информационно-развлекательный портал в поездах «Сапсан» начал работу в режиме постоянной эксплуатации для пассажиров первого и бизнес-классов. Летом текущего года пассажиры принимали активное участие в его тестировании, оставляя отзывы и пожелания.

В настоящее время в первом классе доступен без ограничений Интернет, имеется возможность просмотра 60 фильмов разных жанров – как новинок проката, так и классики кинематографа, прослушивания 200 музыкальных треков, 50 аудиокниг отечественных и зарубежных авторов и чтения PDF-версий печатных изданий (журналы и газеты). Пассажирам бизнес-класса предоставлен бесплатный доступ в Интернет в течение 1 часа, выбор из 24 фильмов, 100 музыкальных треков, 50 аудиокниг отечественных и зарубежных авторов и PDF-версий печатных изданий (журналы и газеты).

Продолжается работа по организации информационно-развлекательного портала для пассажиров поездов «Сапсан» эконом-класса и эконом+. Сейчас у пассажиров данных классов есть возможность просмотра 8 фильмов в тестовом режиме.

Кроме того, учитывая пожелания пассажиров, разработан и действует новый раздел, в котором предлагается новостной, познавательный, образовательный контент:

Преимущество информационно-развлекательного портала заключается в том, что его доступность не зависит от скорости поезда, климатических условий и зоны покрытия мобильных операторов. Содержание портала регулярно обновляется, а ассортимент развлечений и полезной информации увеличивается.

В планах по развитию информационно-развлекательного портала на 2017 год – осуществление электронной торговли на борту поезда «Сапсан»: пассажиры смогут приобретать блюда и напитки из вагона-бистро, сувениры с доставкой на место, оплачивая их банковской картой или наличными. Со временем для удобства пользователей портала эта услуга будет доступна в виде приложений для iOS и Android с функцией личного кабинета.

Источник

Руководство по разработке облачных приложений с помощью SAP Cloud Platform и Cloud Foundry

Cloud Foundry (CF) является глобальным стандартом разработки облачных приложений, который позволяет разработчикам уделять больше внимания поставленным задачам и облегчает процесс развертывания и управления приложениями.

В этой статье мы расскажем о нескольких этапах, которые помогут работать с Cloud Foundry и нашей облачной платформой:

Первоначальные требования к сайту:

В этой статье мы расскажем в деталях о том, как локально запустить простое приложение SpringBoot, затем переместить его в среду Cloud Foundry на SAP Cloud Platform. После изучения приложения и проверки основных логов (журналов) и метрик мы рассмотрим, как улучшить приложение, используя возможности поддержки различных функций — к примеру, интеграции с сервисом Application Logging, а также про масштабирование приложения.

Статья состоит из 7 разделов:

1. Подготовка среды разработки
2. Клонирование шаблона приложения из Github
3. Перемещение приложения в облако
4. Получение информации о приложении, запущенном в среде SAP Cloud Platform
5. Интеграция с сервисом Application Logging (логирование приложения)
6. Масштабирование приложения

Инструменты разработки
Чтобы выполнить шаги, которые описаны в этой статье, вам потребуется установить следующие компоненты:

Приложение «Product List»

Это приложение, используемое в качестве примера, содержащее в себе список продуктов. Оно будет развиваться и улучшаться по ходу выполнения шагов, которые мы рассмотрим в данной статье. Приложение будет работать в среде Cloud Foundry облачной платформы SAP, с использованием различных служб, таких как PostgreSQL для хранения в облаке, Application Logging (логирование приложения) и т.д. Это приложение SpringBoot с простым пользовательским интерфейсом.

PostgreSQL — это система управления объектно-реляционными базами данных с открытым исходным кодом. Это база данных корпоративного класса, совместимая с ACID. Онa доступна для использования в качестве сторонней службы в среде Cloud Foundry.

Сервис Application Logging

Вы можете создавать, просматривать и анализировать логи приложений с помощью службы Application Logging. Она основана на платформе логирования с открытым исходным кодом Elasticsearch, Logstash, Kibana (Elastic Stack). Приложение требует некоторой подготовки, прежде чем его логи будут переданы в службу Application Logging.

Сервис Application Autoscaler

Служба Application Autoscaler используется для автоматического масштабирования приложения и для масштабирования связанных приложений, основанных на пользовательских политиках. Динамическое масштабирование экземпляра приложения гарантирует, что оно не столкнется с проблемами производительности при увеличении нагрузки и не выйдет из строя. Динамическое масштабирование также дает гарантию того, что ваше приложение использует оптимальные ресурсы.

1. Подготовка среды разработки

В первой части мы расскажем, как создать бесплатную пробную учетную запись в среде Cloud Foundry на базе SAP Cloud Platform и настроить локальную среду разработки. Также мы рассмотрим панель управления SAP Cloud Platform, которая является средством администрирования веб-приложений для облачной платформы.

1) Начало работы с Cloud Foundry

Если у вас еще нет пробной учетной записи в SAP Cloud Platform, то получите ее, следуя этой пошаговой инструкции.

В панели управления SAP Cloud Platform (SAP Cloud Platform cockpit) нажмите на вкладку «Home», чтобы перейти на домашнюю страничку SAP Cloud Platform. В открывшейся страничке нажмите на «Cloud Foundry Trial».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

В появившемся окне выберете регион для вашей пробной учетной записи и нажмите «OK». В нашем случае был выбран регион «Europe (Frankfurt)».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

После этого вы получите глобальный аккаунт, субаккаунт, организацию и пространство в выбранном регионе. Вы можете перейти к созданному пространству, нажав «Go to Space».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Теперь у вас есть ваш бесплатный пробный аккаунт в среде Cloud Foundry.

Примечание: Если у вас уже есть пробная учетная запись в среде Cloud Foundry, просто нажмите на «Cloud Foundry Trial» на домашней страничке SAP Cloud Platform, после чего вы сразу же попадете в пространство вашей пробной учетной записи в среде Cloud Foundry.

2) Панель управления

Ниже представлена упрощенная доменная модель, которая используется в среде Cloud Foundry. Получить более подробную информацию вы можете в документации.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Ниже — скриншот из «Панели управления» SAP Cloud Platform:

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

4) Настройка локальной среды разработки

Для выполнения следующих шагов и работы с Cloud Foundry потребуются инструменты разработки, описанные ниже. Если какие-либо инструменты не установлены на вашем ПК, установите их.

Cloud Foundry Command Line Interface (CF CLI)
Скачайте и установите Cloud Foundry CLI, как описано здесь.

Eclipse
— Для разработки потребуется Eclipse. В данном примере используется версия Neon. Скачать Eclipse IDE for Java EE Developers для версии Neon можно здесь.
— Также вам потребуется установить плагин STS (Spring Tool Suite) для Eclipse.
Как установить плагин STS — описано здесь.

2. Клонирование шаблона приложения из Github
В этом разделе мы расскажем, как клонировать целевую версию шаблона приложения «Product List», импортировать шаблон проекта в среду Eclipse, а затем собрать его.

Перейдите к источнику проекта в github.
Нажмите на кнопку «Clone or download» и выберете «Download ZIP».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

В окне «Import Maven Projects» нажмите «Browse», чтобы прописать путь к разархивированной папке с проектом «cloud-cf-product-list-sample-master», которую вы сохранили ранее, после этого нажмите «Finish».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Теперь проект импортирован в Eclipse, и вы видите ваш проект в окне «Project Explorer», как показано на скриншоте ниже.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

2) Сборка проекта в Eclipse с использованием Maven

Перед тем, как собрать проект с помощью Maven, проверьте, используется ли в вашем Eclipse JRK. В том случае, если ваш Eclipse использует JRE вместо JRK, в процессе сборки вы можете получить ошибку об отсутствии компилятора: «[ERROR] No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK? «.

Как настроить Eclipse для корректной сборки проекта — описано здесь.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

В окне «Edit Configuration» введите clean install в поле «Goals» и нажмите «Run». После этого начнется сборка проекта.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Сборка должна закончиться без ошибок. В случае успешной сборки в консоли вы увидите сообщение об этом:

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

3. Перемещение приложения в облако

1) Вход в аккаунт через CF CLI
В этом упражнении вы узнаете, как загрузить приложение в вашу пробную учетную запись в среде Cloud Foundry платформы SAP Cloud Platform. Это можно сделать с помощью интерфейса командной строки Cloud Foundry (CF CLI).

Примечание для пользователей Windows: Откройте терминал (командную строку) на вашем компьютере. Для этого одновременно нажмите клавишу «Windows» и клавишу «R», а затем введите cmd в поле ввода и нажмите «OK».

Для начала вам нужно «сказать» вашему CF CLI, какой именно регион для среды Cloud Foundry вы собираетесь использовать. Для этого вам потребуется установить конечную точку API для облачного контроллера (Cloud Controller), находящегося в регионе, в котором создана ваша пробная учетная запись в среде Cloud Foundry. Сделать это можно при помощи команды

cf api CLOUD_FOUNDRY_API_ENDPOINT.

Так как в данном примере используется аккаунт, имеющий конечную точку API в регионе EU10, вводим cf api api.cf.eu10.hana.ondemand.com. Если ваш аккаунт создан в том же регионе, используйте эту же конечную точку API.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Примечание: Вы можете найти все конечные точки API для разных регионов среды Cloud Foundry в официальной документации SAP Cloud Platform.

Теперь зайдите в вашу учетную запись, используя следующую команду:

После этого вам нужно будет ввести электронную почту и пароль, которые вы указывали при регистрации в SAP Cloud Platform.

Email> enter your e-mail
Password> password for your user

Далее вы должны выбрать организацию и пространство в Cloud Foundry, которые вы будете использовать для размещения приложения. Если в вашей учетной записи используется только одна организация и пространство, система автоматически выберет их для использования после входа в учетную запись, и они будут выведены в терминале под словом «OK».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Примечание: Если в вашей учетной записи в Cloud Foundry создано несколько организаций и пространств, вы можете выбрать именно те, которые вы собираетесь использовать. Для этого в терминале вам нужно будет ввести следующую команду:

Теперь вы готовы начать работу с вашей учетной записью в среде Cloud Foundry.

2) Манифест приложения

Перед загрузкой приложения в среду Cloud Foundry, вы можете либо прописать параметры приложения в командной строке для команды push, позволяющей запустить приложение в облаке, либо использовать файл дискриптора приложения (manifest.yml), установив в нем параметры для перемещения, что позволит не вводить их заново каждый раз перед использованием команды push. Дополнительную информацию о файле манифеста приложения вы можете найти в документации о Cloud Foundry.

Перейдите в окно Project Explorer в Eclipse, где находится шаблон вашего приложения «Product List», и откройте файл manifest.yml.

После того, как вы откроете этот файл, вставьте в него следующий фрагмент:

applications:
# Application
— name: product-list
instances: 1
memory: 896M
host: product-list-YOUR-BIRTHDATE-DAY-MONTH-YEAR
path: target/my-product-list-0.0.1-SNAPSHOT.jar
buildpack: github.com/cloudfoundry/java-buildpack.git#v4.3

Отредактируйте вставленный фрагмент следующим образом:

Сохраните файл manifest.yml после редактирования.

3) Перемещение

В командной строке пропишете путь к месту нахождения вашего приложения SpringBoot, где вы только что создали файл manifest.yml, а затем введите следующую команду:
cf push

В данном примере приложение хранится в папке cloud-cf-product-list-sample-master, поэтому в терминале эта команда будет выглядеть следующим образом:

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Данная команда запускает процесс развертывания приложения с помощью только что созданного файла manifest.yml. Первый шаг — загрузка двоичных файлов приложения в облако. На следующем этапе происходит так называемая постановка. Следующая фаза — фаза выпуска. Она сообщает Cloud Foundry, как запустить приложение. После успешного завершения команды вы можете открыть приложение в браузере: для этого скопируйте и вставьте URL-адрес, выведенный на консоли после завершения.

Примечание: В случае сбоя команды прочитайте сообщение об ошибке. Возможно, вы неверно указали параметры в manifest.yml. Или превышена квота в вашей пробной учетной записи. Если вы уже использовали ваш пробный аккаунт, вам необходимо удалить приложения и экземпляры служб, перед тем как продолжать упражнения. Вы можете сделать это через панель управления SAP Cloud Platform:

Теперь ваше приложение запущено в вашей учетной записи в среде Cloud Foundry платформы SAP Cloud Platform.

После этого вы попадете в свой глобальный аккаунт. Теперь нажмите на свой суббакаунт (обычно он имеет название «trial»).

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Нажмите на вкладку «Spaces» в меню слева и выберете пространство, в котором находится ваше приложение (обычно это «dev»)

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

После этого вы окажетесь в пространстве вашей учетной записи, где вы можете найти запущенные приложения — в нашем случае это должно быть приложение «Product List», которое вы перенесли в облако. Нажмите на имя приложения, чтобы увидеть более подробную информацию о нем:

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

В открывшемся окне с информацией о приложении, вы найдёте путь к приложению (Application Routes). Нажмите на URL-адрес, чтобы запустить ваше приложение в браузере.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

4) Сервисы

До сих пор мы использовали информацию о продуктах в памяти виртуальной машины Java, которая хороша для локального тестирования, быстрых циклов изменения. Однако этот способ имеет некоторые недостатки — если приложение будет перезапущено, то все изменения будут потеряны, если у вас будет больше, чем один запущенный процесс приложения, данные будут отличаться и т. д. Давайте добавим базу данных в качестве сторонней службы в облаке, чтобы избежать этих проблем. Это можно сделать без изменений в коде. Для этого нужно создать экземпляр службы, связать его с приложением и перезапустить приложение, чтобы оно начало использовать базу данных. Выполните следующие действия:

В терминале введите команду cf marketplace для отображения всех доступных вашему пользователю сервисов. Вы увидите список сервисов, краткое описание и информацию о планах обслуживания.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Прежде чем приложение начнет использовать службу, необходимо создать экземпляр службы. Создайте экземпляр службы PostgreSQL с помощью команды cf create-service SERVICE PLAN SERVICE_INSTANCE. Для этого введите в терминале:

cf create-service postgresql v9.6-dev postgres

Только что созданный postgresql сервис появится в списке сервисов, используемых в вашем пространстве. Чтобы убедиться в этом, введите следующую команду:

Последний шаг — связать экземпляр службы с вашим приложением. Для этого введите команду cf bind-service APP_NAME SERVICE_INSTANCE в CF CLI:

cf bind-service product-list postgres

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Теперь нужно обновить приложение, чтобы подключение к PostgreSQL для него было сохранено и этот сервис использовался в дальнейшем. Для этого используйте команду cf restage APP_NAME:

cf restage product-list

После этого введите команду cf services, и вы увидите, что теперь экземпляр службы PostgreSQL присоединен к приложению «Product List».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Примечание: Альтернативным способом присоединения сервисов к приложению является манифест приложения. Если вы используете manifest.yml для привязки сервисов, то после редактирования этого файла вам необходимо будет заново загрузить приложение в облако с помощью команды push, чтобы среда обновилась, и приложение смогло использовать эту услугу. Таким образом, для этого примера вам нужно добавить следующий фрагмент в файл манифеста, а затем снова загрузить приложение в облако:

Обычно на этом этапе вам необходимо определить экземпляр службы и адаптировать код приложения. Информация о том, как получить доступ к экземпляру службы, теперь доступна в вашей прикладной среде как переменная среды VCAP_SERVICES. В нашем случае среда SpringBoot обеспечивает механизм для обнаружения службы PostgreSQL и начала работать с ней, поэтому нет необходимости изменять код приложения.

4. Получение информации о приложении, запущенном в среде SAP Cloud Platform

Как получить дополнительную информацию о приложениях и службах, запущенных в пробной учетной записи в среде Cloud Foundry, и как получить основные метрики и логи.
Эту информацию можно узнать как с помощью CF CLI, так и через панель управления SAP Cloud Platform. Будут рассмотрены оба варианта.

1) Подключение службы для просмотра логов

Перед просмотром логов в Kibana, необходимо подключить службу application-logs к приложению. Kibana — веб-интерфейс для вывода индексированных Elasticsearch логов. Воспользуемся CLI и командами, которые мы использовали в предыдущем упражнении, для создания и привязки экземпляра службы к нашему приложению. Последовательно введите в терминале следующие команды:

cf marketplace
cf create-service application-logs lite myapplogs
cf services
cf bind-service product-list myapplogs
cf restage product-list

2) Просмотр приложений, загруженных в облако

Получим список приложений, запущенных в пространстве нашей учетной записи, с информацией о них. Это можно сделать через CF CLI и через панель управления.

Для отображения списка запущенных приложений, введите в терминале следующую команду:
cf apps

Панель управления SAP Cloud Platform

Перейдите в пространство, созданное в среде Cloud Foundry и выберете вкладку «Applications» в меню слева. Перед вами появится список приложений, находящихся в этом пространстве. В данном примере в пространстве находится только приложение «Product List».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

3) Просмотр сервисов

Получим список созданных в вашем пространстве экземпляров служб и их привязок.

Для отображения списка созданных экземпляров служб и их привязок введите следующую команду:

Панель управления SAP Cloud Platform

В меню навигации, которое находится слева, есть вкладка «Services». Выберете ее, а затем нажмите на появившуюся вкладку «Service Instances», чтобы увидеть все экземпляры служб, созданные в вашем пространстве, а также основную информацию о них.

4) Просмотр логов приложения

Просмотреть логи приложения можно с помощью команды cf logs APP_NAME. Для этого введите в терминале:

cf logs product-list

Примечание: Вызовите приложение в случае, в том случае, если логи не отображаются после ввода данной команды.

Чтобы выйти из режима потока логов в реальном времени в консоли, нажмите Ctrl + C.
Для отображения последних логов приложения воспользуйтесь следующей командой:

Панель управления SAP Cloud Platform

Чтобы просмотреть журналы приложений в панели управления, снова перейдите к списку приложений в вашем пространстве (вкладка «Applications») и выберете запущенное приложение (щелкните по имени приложения). Затем в меню слева выберете «Logs», после чего вы увидите таблицу с последними логами приложений. Если ваше приложение имеет более одного экземпляра приложения, вы можете выбрать, для какого экземпляра вы хотите просмотреть журналы.

5) Отображение метрик

Получим отображение состояния работоспособности и статуса приложения, включая информацию о потреблении процессора, памяти и диска.

CF CLI
Для отображения метрик приложения, введите в терминале команду:

cf app product-list

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Панель управления SAP Cloud Platform

Чтобы просмотреть метрики приложения в панели управления, перейдите к списку приложений в вашем пространстве (вкладка «Applications») и выберете запущенное приложение (щелкните по имени приложения). Затем в меню слева выберете «Overview». В открывшемся окне вы увидите аналогичную информацию о запущенном приложении.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

6) События

Просмотрим последние события приложения (такие как создание, переустановка, обновление и т.д.) и получим информацию о том, когда они произошли и кто их вызвал.

Увидеть последние события приложения через терминал можно с помощью команды cf events APP_NAME. Введите команду:

cf events product-list

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Панель управления SAP Cloud Platform

Чтобы просмотреть события приложения в панели управления, перейдите к списку приложений в вашем пространстве (вкладка «Applications») и выберете запущенное приложение (щелкните по имени приложения). Затем в меню слева выберете «Events».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

7) Переменные среды

Доступ к переменным среды
Увидеть список переменных среды можно с помощью CF CLI, путем ввода следующей команды в терминале:

cf env product-list

Также список переменных среды можно получить через панель управления SAP Cloud Platform. Для этого перейдите к списку приложений в вашем пространстве (вкладка «Applications») и выберете запущенное приложение (щелкните по имени приложения). Затем в меню слева выберете «Environment Variables».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

В следующих примерах показано, как обращаться к переменным среды из приложения программным способом: примеры на Java, NodeJS и Ruby.

Установка переменных среды

Специфичные для среды приложения переменные могут быть заданы разработчиком приложения с помощью команды в CF CLI:

cf set-env APP_NAME VARIABLE_NAME VARIABLE_VALUE

Или путём их описания в файле manifest.yml приложения следующим образом:\

— …
env:
VARIABLE_NAME_1: VARIABLE_VALUE_1
VARIABLE_NAME_2: VARIABLE_VALUE_2

Также задать переменные можно через панель управления SAP Cloud Platform. Для этого перейдите к списку приложений в вашем пространстве (вкладка «Applications») и выберете запущенное приложение (щелкните по имени приложения). Затем в меню слева выберете «User-Provided Variables» и в открывшемся окне нажмите «Add Variable».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Системные переменные среды

Полный список переменных среды, которые Cloud Foundry предоставляет контейнеру приложения, представлен ниже:

o CF_INSTANCE_ADDR
o CF_INSTANCE_GUID
o CF_INSTANCE_INDEX
o CF_INSTANCE_IP
o CF_INSTANCE_INTERNAL_IP
o CF_INSTANCE_PORT
o CF_INSTANCE_PORTS
o HOME
o MEMORY_LIMIT
o PORT
o PWD
o TMPDIR
o USER
o VCAP_APP_HOST
o VCAP_APP_PORT
o VCAP_APPLICATION
o VCAP_SERVICES

Последняя переменная (VCAP_SERVICES) важна в том случае, если ваше приложение использует привязываемые службы, т.к. Cloud Foundry добавляет к ней сведения о привязке в тот момент, когда вы загружаете приложение после привязки службы к нему. Пример основан на приложении, которое связано со службой postgresql.

8) Проверка работоспособности приложения

Проверка работоспособности приложения — это процесс мониторинга, который постоянно проверяет статус приложения, запущенного в Cloud Foundry. В среде Cloud Foundry таймаут по умолчанию составляет 60 секунд, а максимальный настраиваемый таймаут — 180 секунд. В Cloud Foundry доступны три типа проверки работоспособности:

http: — проверка работоспособности типа http выполняется с помощью запроса GET на настроенную конечную точку http. Когда проверка работоспособности получает ответ HTTP 200, приложение считается «здоровым». Конфигурированная конечная точка должна отвечать в течение 1 секунды, чтобы считаться здоровой.

port: — это проверка по умолчанию. Этот тип проверки совершает TCP-соединение с портом или портами, настроенными для приложения (по умолчанию 8080). TCP-соединение должно быть установлено в течение 1 секунды, чтобы считаться приложение считалось «здоровым».

process: Diego гарантирует, что любой процесс, объявленный для приложения, будет работать. Если процесс завершается, Diego останавливается и удаляет экземпляр приложения.

Тип проверки работоспособности может быть указан при перемещении приложения в облако с помощью команды push:

С помощью CF CLI можно назначить тип проверки работоспособности уже запущенному приложению, используя следующую команду:

cf set-health-check APP_NAME (process | port | http [—endpoint PATH])

Узнать тип проверки работоспособности для определенного приложения можно с помощью команды CF CLI cf get-health-check APP_NAME. Введите в терминале следующую команду, чтобы узнать тип проверки работоспособности для приложения «Product List»:

cf get-health-check product-list

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

5. Интеграция с сервисом Application Logging (логирование приложения)

В этом упражнении вы узнаете, как интегрировать приложение с сервисом Application Logging (логирование приложения) в SAP Cloud Platform, и как визуализировать логи приложения на панелях Kibana с логами компонентов Cloud Foundry.

1) Логирование

Рассмотрим исходный код приложения. В нем уже используется библиотека SAP – поддержка логирования для Cloud Foundry: github.com/SAP/cf-java-logging-support. В pom.xml объявлены требуемые зависимости, также доступны конфигурация (logback.xml) и реализация (ConfigLogging).

Откройте Eclipse и перейдите к классу Controller.java в вашем приложении «product-list».
Внутри класса вы увидите объект Logger:

private static final Logger logger = LoggerFactory.getLogger(Controller.class);

Метод getProductByName записывает следующие точки входа логов:

logger.info(«***First — Retrieving details for ‘<>‘.», name);
logger.info(«***Second — Retrieving details for ‘<>‘.», name);

Служба application-logs уже создана и привязана к приложению product-list (это было сделано в предыдущем упражнении).

Перед генерацией логов измените файл logback.xml.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php
panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

• После успешной сборки проекта вам необходимо будет переустановить приложение в Cloud Foundry.

В командной строке пропишете путь к месту нахождения вашего приложения SpringBoot, и введите команду

cf push product-list.

2) Генерирование логов

Для генерации логов достаточно вызвать приложение через URL-адрес в панели управления SAP Cloud Platform.

Для генерации логов приложения сделайте запрос в браузере, прописав следующий путь:

YOUR_APPLICATION_URL/productsByParam?name=Notebook Basic 15.

В панели управления перейдите на вкладку «Logs», которая расположена в меню слева, для приложения «product-list». Затем нажмите на «Open Log Analitic», как показано на скриншоте ниже:

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Это должно привести к открытию в браузере следующего URL-адреса: logs.cf.eu10.hana.ondemand.com. Чтобы войти в систему, введите почту и пароль, которые вы используете для входа в свою пробную учетную запись в SAP Cloud Platform.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

После того, как вы попадете в Kibana, выберете приложение «product-list».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

В открывшемся окне выберете «Requests and Logs».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

После этого появятся запросы и логи приложения.

Поле msg в логах приложения будет выглядеть несколько странно. Видно, что логи и запросы не связаны, т.к. в логах приложения нет идентификатора корреляции (Correlation ID). Это затрудняет определение принадлежности логов приложения определенным запросам.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Примечание: Если вы не видите логи в Kibana, это может быть вызвано тем, что по умолчанию вы видите журналы за последние 15 минут. Вы можете изменить этот интервал — в правом верхнем углу нажмите на надпись «Last 15 minutes» и в открывшемся окне задайте нужный вам интервал.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Примечание: Дополнительную информацию о логировании приложения в среде Cloud Foundry платформы SAP Cloud Platform вы можете найти в официальной документации: обзор сервиса Application Logging в официальной документации.

6. Масштабирование приложения

В этом упражнении вы узнаете, как масштабировать приложение.

Нагрузка системы, количество и характер задач — все эти факторы могут изменять пространство и память на диске, используемые приложением. Для многих приложений увеличение доступного пространства, памяти или запуск большего количества экземпляров (ЦП) может повысить общую производительность. Аналогично, запуск дополнительных экземпляров приложения может позволить приложению регулировать увеличение нагрузки и одновременных запросов. Это регулирование называется масштабированием приложения.

Вы можете масштабировать приложение таким образом, чтобы оно было приспособлено к изменениям в трафике, вы можете масштабировать его вручную через CF CLI или через панель управления SAP Cloud Platform, а также можно настроить автоматическое использование сервиса Application Autoscaler (автоматическое масштабирование приложения) платформы SAP Cloud Platform для вашего приложения.

1) Подготовительный этап
Если в вашей учетной записи запущено несколько приложений, вам нужно будет немного почистить ваш аккаунт, чтобы убедиться, что у вас достаточно квоты, чтобы попробовать варианты масштабирования. Оставьте только один экземпляр приложения «Product List» в вашей учетной записи, остальные удалите.

Для этого выполните следующие шаги:
Откройте командную строку и введите команду cf apps, чтобы увидеть список приложений, запущенных в вашей учетной записи.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Если в списке окажется больше одного запущенного приложения «Product List», остановить их, оставив только одно такое приложение, чтобы освободить память для выполнения упражнений по масштабированию. Для этого используйте следующую команду для каждого запущенного приложения, которое вы хотите остановить:

Примечание: Прежде чем продолжить следующие упражнения, убедитесь, что в вашей учетной записи запущен один экземпляр приложения «Product List». В том случае, если нет ни одного экземпляра, вы можете клонировать шаблон приложения из Github и затем переместить проект в облако с помощью CF CLI (эти процессы рассмотрены во втором и третьем упражнениях статьи).

2) Вертикальное масштабирование
Вертикальное масштабирование приложения меняет ограничение на дисковое пространство или ограничение памяти, которое Cloud Foundry применяется ко всем экземплярам приложения. Существует два способа вертикального масштабирования приложения: с помощью CF CLI или через панель управления в SAP Cloud Platform. Рассмотрим оба способа.

Предположим, мы хотим уменьшить масштаб приложения и сделать его более компактным, установив ограничение памяти до 712 МБ. Для этого необходимо ввести следующую команду:

Выполнение этой команды в CF CLI приведет к перезапуску приложения (вы должны подтвердить перезапуск приложения с помощью ввода «Yes» в консоли). Как только приложение будет перезапущено, вы можете перейти в панель управления в SAP Cloud Platform, открыть приложение «Product List», чтобы убедиться, что теперь оно использует 712 МБ памяти. Вы можете также можете просмотреть информацию о приложении через консоль с помощью команды:
cf app APP-NAME

Панель управления SAP Cloud Platform
Ту же операцию вертикального масштабирования можно выполнить через панель управления.
Для этого перейдите к списку приложений в вашем пространстве (вкладка «Applications») и выберете запущенное приложение (щелкните по имени приложения). Затем в меню слева выберете вкладку «Overview». В открывшемся окне найдите секцию, которая содержит информацию о квоте, здесь вы увидите квоту памяти и дисковые квоты для вашего приложения. Вы можете изменить их, нажав кнопку «Change Quota».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Нажмите на кнопку «Change Quota» и в открывшемся окне уменьшите квоту памяти на диске, установив, например, 512 МБ. Нажмите кнопку «Save».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Вы можете проверить, изменилось ли используемое приложением пространство диска, в секции с информацией о квоте во вкладке «Overview» приложения.

Если изменения не вступили в силу, вам понадобится вручную перезапустить приложение. Вы можете сделать это с помощью кнопки «Restart».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

3) Горизонтальное масштабирование
Горизонтальное масштабирование приложения создает или удаляет экземпляры приложения. Входящие запросы приложения автоматически регулируются по нагрузке во всех экземплярах приложения, и каждый экземпляр обрабатывает задачи параллельно с другими экземплярами. Добавление экземпляров позволяет вашему приложению обрабатывать большее количество трафика и запросов. Существует два способа вертикального масштабирования приложения: с помощью CF CLI или через панель управления в SAP Cloud Platform. Рассмотрим оба способа.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Панель управления SAP Cloud Platform

Вы также можете проводить горизонтальное масштабирование через панель управления. Перейдите к приложению через панель управления. В разделе экземпляров, который можно найти, нажав вкладку «Overview» в меню слева, вы должны увидеть два работающих экземпляра, т.к. мы только что увеличили их количество. В верхней части находятся кнопки «+ Instance» и «- Instance». Нажав на кнопку «- Instance», вы остановите один из работающих экземпляров приложения.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

4) Автоматическое масштабирование
Мы рассмотрели ручной способ масштабирования приложения, используя команду cf scale в командной строке и панель управления SAP Cloud Platform. Недостатком этого способа является то, что вы обычно выполняете эти действия только в том случае, если замечаете, что производительность вашего приложения ухудшилась. Существует риск, что ваше приложение выйдет из строя, если масштабирование не будет выполнено в соответствующее время. Поэтому иногда лучше иметь возможность автоматического масштабирования, что позволит предотвратить сбои приложения.

Рассмотрим, как осуществить возможность автоматического масштабирования приложения на основе пользовательских политик масштабирования для удовлетворения изменений в трафике или в запросах с помощью службы Application Autoscaler платформы SAP Cloud Platform.

Создание нагрузки на приложение

Мы рассмотрим автоматическое масштабирование, основанное на увеличении использования памяти. Для этого подготовим симуляцию процесса, увеличивающего использование памяти в приложении «Product List».

Перейдите к классу Controller приложения в Eclipse и добавьте следующую конечную точку API.

@GetMapping(«/scaleup»)
public String scaleUp() <
String str = «»;
HashMap h = null;
for (int i = 0; i ();
String key = new String(«key»);
Double value = new Double(100.98);
h.put(key, value);
str = str + h.toString();
>
return «success»;
>

Это создаст большое количество нежелательных объектов, что увеличит использование памяти.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php
panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

В этом же классе добавьте импорт import java.util.HashMap;.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Теперь добавим действие для запуска API, увеличивающего использование памяти.
Перейдите к файлу index.html, расположенного по пути src/main/resources/index.html и добавьте следующий фрагмент под комментарием Insert the code to increase the memory of the application в этом файле:

/* Adding Toolbar to the UI */
var toolBar = new sap.m.Toolbar();
var memButton = new sap.m.Button( <
title: «Scale Up»,
press: function (oEvent) <
jQuery.sap.require(«sap.m.MessageBox»);
sap.m.MessageBox.show(
«This will scale up the memory of the application», <
icon: sap.m.MessageBox.Icon.INFORMATION,
title: «ScaleUp Application»,
actions: [sap.m.MessageBox.Action.OK],
onClose: function(oAction) <
var oScaleModel = new sap.ui.model.json.JSONModel();
var scaleUpUrl = document.URL + «scaleup»;
oScaleModel.loadData(scaleUpUrl);
console.log(scaleUpUrl);
>
>
);
>
>);
memButton.setText(«Scale Up»);
toolBar.addContent(memButton);
productList.setHeaderToolbar(toolBar);

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Использование памяти должно резко увеличиться.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Теперь, когда мы подготовили наше приложение, давайте рассмотрим, как воспользоваться службой Application Autoscaler для автоматического масштабирования приложения, когда использование памяти увеличивается и выходит за рамки.

1) Создание экземпляра службы и определение правил масштабирования
Создать экземпляр службы и определить правила масштабирования можно не только через CF CLI, но и с помощью панели управления SAP Cloud Platform. Давайте воспользуемся панелью управления.

Перейдите в свою пробную учетную запись, выбрав то пространство, в котором запущено приложение «Product List» (обычно это «dev»). Нажмите на вкладку «Services» в меню слева и в выпавшем списке выберете «Service Marketplace». В открывшемся окне вы должны увидеть сервис Application Autoscaler. Нажмите на этот сервис.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

В открывшемся окне в меню слева выберете вкладку «Instances» и нажмите на кнопку «New Instance».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Появится окно создания экземпляра.
На первом этапе вам нужно выбрать план обслуживания. Для пробных учетных записей доступна только план «Lite», поэтому просто нажмите кнопку «Next».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Следующий шаг вы можете пропустить, так как вы можете указать параметры во время приложения. Поэтому нажмите кнопку «Next».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Следующий шаг вы также можете пропустить, нажмите на кнопку «Next».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

В качестве последнего шага укажите имя экземпляра службы, например, «myautoscaler». Нажмите кнопку «Finish».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

В результате будет создан экземпляр службы Application Autoscaler.

2) Привязка приложения к экземпляру службы

После создания экземпляра службы вы снова попадете во вкладку с экземплярами службы «Application Autoscaler». Нажмите на экземпляр, который вы только что создали:

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

В открывшемся окне с информацией об этом экземпляре, нажмите на кнопку «Bind Instance».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Откроется окно создания привязки службы. Выберете приложение «product-list» в списке приложений.

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Затем вы должны указать параметры масштабирования. Правила масштабирования экземпляра приложения определяются в формате JSON. Обычно вы создаете файл JSON и предоставляете его в качестве конфигурации. Для нашего примера вы можете скопировать и вставить фрагмент, представленный ниже:

<
«instance_min_count»: 1,
«instance_max_count»: 3,
«scaling_rules»: [
<
«metric_type»: «memoryused»,
«stat_window_secs»: 60,
«breach_duration_secs»: 60,
«threshold»: 400,
«operator»: «>=»,
«cool_down_secs»: 60,
«adjustment»: «+1»
>
]
>

Служба увеличит экземпляр на 1 [adjustment: +1], когда память будет превышать пороговое значение. Вы можете отрегулировать значения в соответствии с требованиями вашего приложения. Аналогичным образом вы можете добавить любое другое правило масштабирования. Например, для уменьшения масштаба, когда использование памяти падает ниже определенного порогового значения.
В том же окне создания привязки поставьте галочку рядом с «Specify Parameters», появится поле, куда можно будет вставить данный фрагмент. Вставьте фрагмент кода и нажмите «Save».

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Теперь давайте посмотрим, как сервис «Application Autoscaler» помогает приложению масштабироваться автоматически на основе его показателей.
1) Перезагрузите приложение, чтобы изменения вступили в силу (для этого переместитесь в панель управления, на вкладке «Applications» выберете приложение «Product List», затем нажмите «Overview» и в открывшемся окне нажмите «Restart»);
2) Запустите приложение в браузере, нажав на URL-адрес приложения;
3) Проверьте использование памяти приложения с помощью команды cf app в CF CLI, или используя панель управления SAP Cloud Platform (информацию можно найти на вкладке «Overview»);

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

4) Теперь нажмите на кнопку «Scale Up» в приложении, открытом в браузере;
5) Снова проверьте память приложения через несколько секунд с помощью команды cf app в CF CLI, или используя панель управления в SAP Cloud Platform (информацию можно найти на вкладке «Overview»);

6) Использование памяти должно увеличиться до такого значения, которое будет выше порогового значения, определенного в политике масштабирования (это значение вы указывали ранее в параметрах привязки в поле threshold). Если этого не произошло, повторите шаги 3 и 4.
7) Когда использование памяти превысит пороговое значение (threshold), а значение времени будет превышать значение breach_duration_secs, указанное в политике масштабирования, сервис «Application Autoscaler» увеличит экземпляр приложения на 1.
8) Проверьте количество экземпляров приложения с помощью команды cf app в CF CLI, или используя панель управления в SAP Cloud Platform (информацию можно найти на вкладке «Overview»).

panel sapsan cloud pages order list php. Смотреть фото panel sapsan cloud pages order list php. Смотреть картинку panel sapsan cloud pages order list php. Картинка про panel sapsan cloud pages order list php. Фото panel sapsan cloud pages order list php

Заключение

Итак, среда Cloud Foundry на базе платформы SAP Cloud Platform является отличным решением для тех, кто хочет быстро и без особых затруднений разработать облачное приложение и добавить в него возможности мониторинга, масштабирования и обновления.

В ходе данной мы рассказали о следующих этапах по работе с Cloud Foundry на SAP Cloud Platform:

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Metric NameDescriptionMAI CategorySince SP
Number of Errors in C4C (Delta)