1с включить отладку http сервиса

Обновлено: 05.07.2024

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

Основные преимущества

Чтобы вы могли представить себе объём выполненных нами изменений, коротко перечислим основные преимущества нового механизма.

Современная архитектура отладки

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

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

Отладка мобильных приложений

Изменение переменных, свойств объектов и асинхронные вычисления выражений

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

Отладка в Development Tools

При создании нового механизма отладки мы реализовали новый, универсальный программный интерфейс взаимодействия с ним. Этот интерфейс использует конфигуратор 1С:Предприятия, и этот же интерфейс использует теперь и новая среда разработки 1C:Enterprise Development Tools. Таким образом, все возможности отладки доступны теперь и при работе в Development Tools.

Архитектура процесса отладки

Новая архитектура отладки выглядит следующим образом:


В отладке участвуют отладчик, предметы отладки и новый элемент - сервер отладки.

Взаимодействие с сервером отладки выполняется по инициативе отладчика и предметов отладки. Для этого организуются дополнительные соединения. Их основное назначение - узнать, не появилась ли для них информация на сервере отладки. И если появилась, получить эту информацию.

Таким образом, взаимодействие получается одностороннее. Информация всё время передаётся с сервера отладки в отладчик, и в предметы отладки.

Идентификация информационных баз

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

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

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

Типичные сценарии отладки

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

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

Файловый вариант

Клиент-серверный вариант

Подключение предметов отладки

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

При этом, как и раньше, у вас есть возможность настроить в конфигураторе автоматическое подключение предметов отладки независимо от того, каким образом они были запущены. Теперь эти возможности стали гораздо богаче.

Во-первых, теперь платформа предлагает вам для выбора все возможные предметы отладки.


А во-вторых, появился ещё один, более тонкий способ настройки. Это использование заранее созданных отборов.

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


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

Изменение переменных, свойств объектов и асинхронные вычисления выражений

Новый механизм отладки позволяет вам изменять значения переменных в процессе отладки. В прежнем механизме такая возможность отсутствовала.

Для удобного просмотра и изменения локальных переменных, что представляется наиболее частой задачей, мы реализовали окно «Локальные переменные».


Внешне оно очень похоже на привычное вам «Табло». Но, во-первых, это окно уже автоматически заполнено всеми локальными переменными, а во-вторых, значения переменных вы можете теперь менять.

Значения примитивных типов вы можете изменить прямо в ячейке «Значение»:


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


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


Точно таким же образом вы можете изменять и значения любых (не только локальных) переменных, свойств, доступных для записи. В окне вычисления выражений (которое вызывается командой Shift+F9) вы можете менять значения переменных как в ячейке «Значение», так и с помощью отдельного диалога.


Кстати, само вычисление выражений теперь выполняется асинхронно. Это означает, что конфигуратор заказывает вычисление предмета отладки. И некоторое время это вычисление ожидается на сервере. Если вычисление выполнено, то результаты сразу поступают в конфигуратор. Если вычисление выполняется продолжительное время, то результаты этих вычислений асинхронно приходят в конфигуратор позже. Такой подход позволяет вам не ожидать длительных вычислений в конфигураторе, и продолжить свою работу.

Эта статья рассказывает о том, как включить отладку на сервере 1С 8.1, 8.2 и 8.3 в операционных системах Windows и Ubuntu.

Кроме этого отмечу, что эта статья входит в небольшую серию статей об отладке в 1С:

  • Как включить отладку на сервере 1С

Включаем отладку на сервере 1С в Windows

Запускаем редактор реестра, выполнив команду regedit (при помощи Win+R или Пуск->Выполнить).

Запускаем Regedit

Запускаем Regedit

Затем, в редакторе реестра открываем:

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\1C:Enterprise 8.3 Server Agent (x86-64)

Для версий 8.1 и 8.2 делаем тоже самое, только последняя часть пути будет отличаться в зависимости от версии сервера.

Редактор реестра

Редактор реестра

После этого в параметре ImagePath (подчеркнут на картинке сверху) добавляем -debug, например было:

"C:\Program Files\1cv8\8.3.8.2197\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo"

"C:\Program Files\1cv8\8.3.8.2197\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo" -debug

Изменяем ImagePath

Изменяем ImagePath

Перезапускаем агент сервера 1С

Перезапускаем агент сервера 1С

Готово — теперь отладка на сервере 1С должна заработать.

Описанные выше операции позволяют включить отладку на сервере по протоколу TCP/IP (это вариант по умолчанию) и в подавляющем большинстве случаев это как раз то, что нужно.

Если используется удаленный сервер отладки, то нужно дополнительно указать адрес этого сервера, порт и пароль (если требуется) добавляя соответствующие параметры — -debugServerAddr, -debugServerPort и -debugServerPwd, например:

Включаем отладку на сервере 1С в Ubuntu

В начале становим сервер:

sudo service srv1cv83 stop

После этого открываем от имени суперпользователя файл /etc/init.d/srv1cv83 и находим в нем строку:

И приводим ее к такому виду:

Затем запускаем сервер вновь:

sudo service srv1cv83 start

О том, как установить сервер 1С на Ubuntu 16.04/18.04 можно прочитать в этой статье.

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

Если Вы нашли ошибку или неточность, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

(оценок: 3, средняя оценка: 5,00 из 5)

Кроме этого отмечу, что эта статья входит в небольшую серию статей об отладке в 1С:

Предмет отладки

Типы предметов отладки:

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

Выбор протокола отладки

Выбор протокола отладки

Выбор протокола отладки

  • Использовать локальный сервер отладки — вариант в основном для файловых информационных баз, в дополнительных полях можно указать адрес сетевой карты (если их несколько), а также один или несколько диапазонов портов которые будут использоваться для отладки, например: 1560:1591, 7700-8000;
  • Использовать удаленный сервер отладки — конфигуратор попытается подключиться к удаленному серверу отладки по указанному адресу и порту;
  • Использовать сервер отладки кластера — используется сервер отладки кластера серверов, кластер серверов должен быть запущен в отладочном режиме.

Протокол отладки TCP/IP

При отладке по протоколу TCP/IP отладчик ищет доступные предметы отладки на текущем или указанном компьютере. Для корректной работы отладчика (если конечно речь идет не о файловой базе на одного пользователя) очень рекомендуется нормально настроить сеть — в частности DNS-сервер и доступность отладочных портов (по-умолчанию 1560:1591).

Подключение предметов отладки

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

  • отладчик и предмет отладки имеют одинаковый идентификатор информационной базы;
  • в приложении включена возможность отладки (для сервера — см. первую статью серии, для клиентского приложения — соответствующий параметр командной строки либо свойство в диалоге настройки клиентского приложения либо соответствующие указания в конфигурационном файле);
  • отсутствуют в списке подключенных предметов отладки.

Настройки отладчика

Настройки отладчика

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

Настройки автоматического подключения

Настройки автоматического подключения

Сервер отладки

Сервер отладки обычно запускается конфигуратором (в файловом варианте) или кластером серверов (если кластер запущен в режиме отладки).

Кроме этого сервер отладки может быть запущен вручную — для реализации нетривиальных сценариев отладки.

Сервер отладки (dbgs) находится в каталоге bin, параметр --help покажет информацию об имеющихся параметрах запуска (там все довольно понятно), пример запуска:

C:\Program Files\1cv8\8.3.13.1513\bin\dbgs -a 192.168.0.170 -p 4000

Сервер отладки готов к работе

Сервер отладки готов к работе

Подключение предметов отладки

Подключение предметов отладки

Подключение предметов отладки

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

Отбор предметов отладки

Отбор предметов отладки

В окне настроек отладчика можно узнать адрес сервера отладки и имя информационной базы:

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

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

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

Если Вы нашли ошибку или неточность, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.



Создаем php файл с текстом:

<?php

// Проверка наличия ошибок
if ($output === FALSE)

echo "cURL Error: " . curl_error($ch);

>

//Выводим сервисную информацию по выполнению запроса
$info = curl_getinfo($ch);

echo 'Took ' . $info['total_time'] . ' seconds for url ' . $info['url'];

// Очистка ресурсов
curl_close($ch);
*/

echo "<br>";
echo "<br>";

$obj = json_decode ( $output , true );

echo "Выводит все содержимое JSON";
echo "<br>";
var_dump ( $obj ); // Выводит все содержимое JSON в браузер

echo "<br>";
echo "<br>";
echo "Выводит одну запись из массива JSON";
echo "<br>";
$Code = $obj [1]['Code'];
echo $Code ;
echo "<br>";
$Naim = $obj [1]['Naim'];
echo $Naim ;

echo "<br>";
echo "<br>";
echo "Выводит циклически из массива JSON все записи";
echo "<br>";
foreach ( $obj as $key => $value)
<
foreach ( $obj [ $key ] as $key => $value )
<
echo $key .':'. $value . PHP_EOL ;
echo "<br>";
>
>
?>

Результат выполнения


/*
//Первый способ
// Получение файла JSON используя file_get_contents($url)

//отправляем запрос с параметрами
$username = "Администратор";
$password = "1";
$auth = base64_encode("$username:$password"); //Создаем строку авторизации
//по типу Basic auth, для авторизации в веб-сервисе
$context = stream_context_create([
'http' => [
'method' => "GET",
'header' => "Authorization: Basic $auth"
]
]);

$url ='http://localhost/test/hs/ob/OblistAll';

$output = file_get_contents($url, false, $context);
*/


//Второй способ
//Получение файла JSON используя curl

//Авторизация
$username = "Администратор";
$password = "1";
$host_api font-size: medium;">localhost /test";
$ch = curl_init ( $host_api );

// Проверка наличия ошибок
if ( $output === FALSE )
<
echo "cURL Error: " . curl_error ( $ch );
>

//Выводим сервисную информацию по выполнению запроса
$info = curl_getinfo ( $ch );

echo 'Took ' . $info ['total_time'] . ' seconds for url ' . $info ['url'];

// Очистка ресурсов
curl_close ( $ch );


echo "<br>";
echo "<br>";

$obj = json_decode ( $output , true );

echo "Выводит все содержимое JSON";
echo "<br>";
var_dump ( $obj ); // Выводит все содержимое JSON в браузер

echo "<br>";
echo "<br>";
echo "Выводит одну запись из массива JSON";
echo "<br>";
$Code = $obj [1]['Code'];
echo $Code ;
echo "<br>";
$Naim = $obj [1]['Naim'];
echo $Naim ;

echo "<br>";
echo "<br>";
echo "Выводит циклически из массива JSON все записи";
echo "<br>";
foreach ( $obj as $key => $value)
<
foreach ( $obj [ $key ] as $key => $value )
<
echo $key .':'. $value . PHP_EOL ;
echo "<br>";
>
>
?>


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

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


Очень приятно, что статья помогла вам найти решение поставленных задач!

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

Энергия ветра будет стоить дешевле, чем принятое ископаемое топливо, которое станет ценным для всего необходимого, и будет радовать только для топлива, если это абсолютно необходимо. Фотовольтаика (солнечная электроэнергия) станет стандартной частью строительных материалов, генерируя энергию с эффективностью 25-30% и обеспечивая значительную часть непромышленного спроса. Даже некоторый промышленный спрос будет обеспечиваться за счет фотоэлектрических систем, встроенных в здания, эффективно обращая вспять традиционно принятые солнечные потоки. В относительно отдаленном будущем (

Возникает проблема, что правильнее, гознак или "специальная форма", киржач или ооо "знак". В общем, этот список не полный, есть перечень коммерческих производств, получивших государственный сертификат на производство. Нужно ли нам принимать во внимание эту реальность? Какой сертификат я должен заказать о во в нашем городе? Снимает этот вопрос просто, лучше иметь человека на государственной бумаге, который предлагает дипломы в университете. Суть в том, что руководство способно определять поставщиков бланков без контроля, а гознак, в дополнение ко всему, не такой уж дешевый партнер". Легитимность идентична, поэтому крупные компании предпочитают другие типографии. В случае, если вам понравилась эта короткая статья, и вы собираетесь получить подробную информацию о купить диплом псков I, я прошу всех пользователей посетить этот сайт.

Читайте также: