<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:georss="http://www.georss.org/georss">
 <channel>
  <title>Nightscout: Мониторинг глюкозы в реальном времени | CGM в облаке</title>
  <atom:link href="https://nightscout.su/rss/" rel="self" type="application/rss+xml" />
  <link>https://nightscout.su/</link>
  <description>nightscout.su</description>
  <lastBuildDate>Wed, 04 Dec 2024 00:00:00 +0300</lastBuildDate>
  <language>ru</language>
  <copyright>Copyright 2026, nightscout.su</copyright>
  <item>
   <title>Инструменты администратора Nightscout</title>
   <link>https://nightscout.su/articles/instrumenty-administratora-nightscout</link>
   <guid isPermaLink="true">https://nightscout.su/articles/instrumenty-administratora-nightscout</guid>
   <pubDate>Wed, 04 Dec 2024 00:00:00 +0300</pubDate>
   <author>NightScout.su</author>
   <category><![CDATA[Статьи]]></category>
   <comments>https://nightscout.su/articles/instrumenty-administratora-nightscout#comments</comments>
   <enclosure url="https://nightscout.su/files/blog/instrumenty-administratora-nightscout.jpg" type="image/jpeg" />
   <description><![CDATA[<p>Как пользоваться инструментами администратора в сервисе Nightscout?</p>]]></description>
   <content:encoded><![CDATA[
     <figure>
      <img src="https://nightscout.su/files/blog/instrumenty-administratora-nightscout.jpg" />
      <figcaption>Инструменты администратора Nightscout</figcaption>
     </figure>
    <h3>Обслуживание базы данных</h3><p>База данных потребует обслуживания. Nightscout по умолчанию не удаляет старые данные, поэтому место под хранение баз данных со временем заполнится.</p><p>Убедитесь, что вы включили отображение параметра «Размер базы данных» на своей странице, чтобы держать его под контролем. <a href="https://nightscout.su/articles/opisanie-peremennyh-nightscout" target="_blank" title="">Перейти…</a></p><p>Эта панель предоставляет доступ к основным действиям по обслуживанию различных наборов баз данных, как определено в основных переменных вашего сайта.</p><h3>Статус базы данных Mongo</h3><p>Ваша база данных содержит информацию о батарее, помпе и т. д., определенную в статусе устройства. При необходимости ее можно удалить.</p><img width="1024" height="248" src="https://nightscout.su/uploads/posts/instrumenty-administratora-nightscout/1.png" alt="" /><p></p><h3>База терапии Mongo</h3><p>Удалять данные о <b>терапии</b> и <b>записях данных ГК </b>не стоит спешить. Если вам нужно, чтобы Nightscout хранил эту информацию, оставьте их.</p><img width="1024" height="152" src="https://nightscout.su/uploads/posts/instrumenty-administratora-nightscout/2.png" alt="" /><h3>Записи данных ГК в базе Mongo</h3><img width="1024" height="155" src="https://nightscout.su/uploads/posts/instrumenty-administratora-nightscout/3.jpg" alt="" /><h3>Удалить будущие данные из базы Монго</h3><p>На вашем сайте могут появиться «данные из будущего», созданные из-за неправильно выбранного часового пояса, перехода на летнее время или любой другой ошибки. Из-за них ваш сайт может перестать работать. Используйте эту функцию, чтобы база данных автоматически очистилась от лишней информации. Если таких записей нет, вы увидите строку «База данных содержит 0 записей в будущем».</p><img width="1024" height="178" src="https://nightscout.su/uploads/posts/instrumenty-administratora-nightscout/4.png" alt="" />
   ]]></content:encoded>
  </item>
  <item>
   <title>Редактирование профиля Nightscout</title>
   <link>https://nightscout.su/articles/redaktirovanie-profilya-nightscout</link>
   <guid isPermaLink="true">https://nightscout.su/articles/redaktirovanie-profilya-nightscout</guid>
   <pubDate>Wed, 04 Dec 2024 00:00:00 +0300</pubDate>
   <author>NightScout.su</author>
   <category><![CDATA[Статьи]]></category>
   <comments>https://nightscout.su/articles/redaktirovanie-profilya-nightscout#comments</comments>
   <enclosure url="https://nightscout.su/files/blog/redaktirovanie-profilya-nightscout.png" type="image/jpeg" />
   <description><![CDATA[<p>Как редактировать профиль Nightscout?</p>]]></description>
   <content:encoded><![CDATA[
     <figure>
      <img src="https://nightscout.su/files/blog/redaktirovanie-profilya-nightscout.png" />
      <figcaption>Редактирование профиля Nightscout</figcaption>
     </figure>
    <p>В верхней части страницы вы увидите настройки вашего сайта: <b>название</b>, <b>единицы</b> и <b>формат даты</b>.</p><img width="1024" height="178" src="https://nightscout.su/uploads/posts/redaktirovanie-profilya-nightscout/1.jpg" alt="" /><h2>Просмотр профиля</h2><p>Редактор профилей отобразит ваш активный профиль. Если у вас их несколько, вы можете выбрать нужный в раскрывающемся меню «Сохраненные профили».</p><p>Здесь же можно:</p><ul>	<li>добавить профиль — нажмите на плюс;</li>	<li>удалить профиль — нажмите на крестик;</li>	<li>дублировать профиль — нажмите на стрелочку.</li></ul><p>При дублировании профиля у вас появится новый профиль с сохраненными значениями вашего текущего профиля.</p><p><b>Примечание</b>. При выборе другого профиля изменения, сделанные вами в других профилях, сохраняются.</p><img width="505" height="39" src="https://nightscout.su/uploads/posts/redaktirovanie-profilya-nightscout/2.jpg" alt="" /><p>У каждого профиля есть <b>имя</b>, <b>часовой пояс</b> и <b>время действия инсулина (DIA)</b>. Все эти параметры вы можете изменить. Если вы не знаете, какое значение DIA лучше использовать, посоветуйтесь с эндокринологом.</p><img width="523" height="104" src="https://nightscout.su/uploads/posts/redaktirovanie-profilya-nightscout/3.jpg" alt="" /><p>Для каждого профиля можно определить <b>соотношение инсулин/углеводы (I:C)</b>, <b>фактор чувствительности к инсулину (ISF)</b> и <b>скорость усвоения углеводов</b>. Первые 2 значения можно определить для конкретного времени суток отрезками по 30 минут. Нажмите на значок плюса, чтобы добавить еще один интервал.</p><p>Эти значения являются ключевыми для лечения диабета. Проконсультируйтесь по этому поводу у эндокринолога, если не знаете, с чего начать.</p><img width="666" height="300" src="https://nightscout.su/uploads/posts/redaktirovanie-profilya-nightscout/4.jpg" alt="" /><p>Если ваш загрузчик не отправляет базальные значения помпы в Nightscout, вы можете продублировать данные в пункте «Скорость базала», чтобы они соответствовали вашему текущему базальному профилю. На сайте Nightscout также удобно хранить эту информацию. Базальные дозы можно определить с интервалом в 30 минут, чтобы добавить еще один интервал, нажмите на значок плюса.</p><img width="493" height="119" src="https://nightscout.su/uploads/posts/redaktirovanie-profilya-nightscout/5.jpg" alt="" /><p>Вы также можете определить свой <b>целевой диапазон ГК </b>— минимальные и максимальные значения для определенных временных отрезков в течение дня.</p><img width="536" height="102" src="https://nightscout.su/uploads/posts/redaktirovanie-profilya-nightscout/6.jpg" alt="" /><p>После того как вы определили свой профиль, вам необходимо авторизоваться и указать свой API-secret, чтобы сохранить настройки.</p><p>Для внесения изменений прочитайте следующий абзац и убедитесь, что вы понимаете, как работает механизм «Записи в базе данных».</p><img width="456" height="258" src="https://nightscout.su/uploads/posts/redaktirovanie-profilya-nightscout/7.jpg" alt="" /><h3>Изменение профиля и записей базы данных</h3><p>Когда вы изменяете профиль и сохраняете его, записи базы данных обновляются. Так будет происходить всегда, когда вы будете заходить в конкретный профиль, так как запись в базе данных «Запись действительна от» будет обновлена ​​​​в соответствии с изменениями в вашем профиле. Если вы не хотите, чтобы этот сценарий действовал, создайте новую запись базы данных и заново создайте в ней свои профили.</p><p>Вы можете добавить запись, нажав на значок плюса, или удалить ее, нажав на крестик. При удалении сотрется соответствующая информация профилей во временных рамках записи. Также вы можете дублировать запись, нажав на стрелочку.</p><img width="597" height="44" src="https://nightscout.su/uploads/posts/redaktirovanie-profilya-nightscout/8.png" alt="" />
   ]]></content:encoded>
  </item>
  <item>
   <title>Использование Nightscout</title>
   <link>https://nightscout.su/articles/ispolzovanie-nightscout</link>
   <guid isPermaLink="true">https://nightscout.su/articles/ispolzovanie-nightscout</guid>
   <pubDate>Wed, 04 Dec 2024 00:00:00 +0300</pubDate>
   <author>NightScout.su</author>
   <category><![CDATA[Статьи]]></category>
   <comments>https://nightscout.su/articles/ispolzovanie-nightscout#comments</comments>
   <enclosure url="https://nightscout.su/files/blog/ispolzovanie-nightscout.jpg" type="image/jpeg" />
   <description><![CDATA[<p>Как пользоваться сервисом Nightscout?</p>]]></description>
   <content:encoded><![CDATA[
     <figure>
      <img src="https://nightscout.su/files/blog/ispolzovanie-nightscout.jpg" />
      <figcaption>Использование Nightscout</figcaption>
     </figure>
    <h2>Общие данные</h2><p>После подключения приложения к серверу Nightscout на него начнут поступать первые данные:</p><img width="458" height="339" src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/1.jpg" /><p>Сверху в центре вы увидите уровень глюкозы по последним данным, полученным с сенсора. В левой части экрана отображается текущее время, а также указано, когда уровень сахара проверялся в последний раз.</p><p>Стрелка около значения сообщает, падает сахар, поднимается или находится на стабильном уровне. Ниже указана дельта (-0.7 mmol/L) — параметр, показывающий изменение между двумя последними значениями уровня глюкозы.</p><p>В левой части окна можно выбрать период времени, за который нужно получить информацию об уровне сахара — за 2, 3, 4, 6, 12 или 24 часа. Здесь же вы можете нажать на три точки и включить функцию Show AR2 Forecast (либо прогноз Вашей петли, если он доступен), которая прогнозирует значения и присылает оповещения, если что-то может пойти не так. Предполагаемые данные отображаются в виде точек.</p><p>В нижней части будут отображаться последние 48 часов, и вы можете использовать прокрутку для просмотра своих старых данных.</p><img width="482" height="216" src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/2.jpg" /><h2>Аутентификация</h2><p>По умолчанию ваш сайт открывается только для чтения, поэтому вам необходимо пройти аутентификацию — после этого вы сможете изменять настройки. Нажмите на значок замка в правом верхнем углу, введите свой API-secret (вы получили его при создании сервера) и нажмите Update.</p><img width="320" height="256" src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/3.jpg" /><p>После этого у вас появятся новые иконки в этом же верхнем правом углу — нажмите на них, чтобы получить возможность добавлять терапию и вносить другие изменения.</p><h2>Добавление терапии</h2><p>Не все приложения вашего телефона отправляют данные о терапии в Nightscout. Но вы можете сделать это вручную. Нажмите на значок плюса в верхнем правом углу, у вас откроется такое окно:</p><img width="271" height="420" src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/4.jpg" /><p>В пункте «Тип события» выберите тип лечения — контроль ГК, болюс на перекус и другие. Список можно расширить с помощью расширений Loop и OpenAPS/AAPS.</p><h3>Контроль ГК</h3><p>В этом разделе вы можете ввести значение уровня глюкозы в крови, которое показывает ваш глюкометр. Переключаться на «Сенсор» не требуется — при использовании датчика CGM эта функция нужна редко.</p><img width="487" height="97" src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/5.jpg" /><p>Ниже вы можете изменить время события. Если оставить текущее значение, то оно может не совпадать с данными, полученными с датчика CGM (в случае, если уровень сахара в крови нестабильный).</p><h3>Болюс на коррекцию</h3><p>В этом разделе можно указать количество введённых единиц инсулина для коррекции. Значение будет отображаться визуально в виде круга, заполненного внизу синим цветом.</p><img width="564" height="76" src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/6.jpg" /><h3>Болюс на еду, Углеводы на коррекцию, Болюс на перекус</h3><p>В этих разделах вы можете указывать количество углеводов, белков и жиров (в граммах), которое вы получаете при приёме пищи.</p><p>Данные будут отображаться в виде круга, размер которого зависит от количества пищи. Верхняя часть круга заполняется белым цветов, если в еде присутствуют углеводы. При добавлении белков и жиров их количество будет отображаться в следующем порядке: углеводы/белки/жиры. Для инсулина нижняя половина круга окрасится синим цветом, а ниже будут указаны единицы измерения.</p><p>Ниже вы можете выбрать время усвоения углеводов, установив значение «Время в минутах» (т.е. время в прошлом или будущем, когда вы действительно ели или будете есть эти углеводы).</p><img width="602" height="116" src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/7.jpg" /><h3>Комбинированный болюс</h3><p>В этом разделе вы сможете вводить комбинированный болюс при использовании помпы. Введите общее количество инсулина (введено инсулина), а затем разбейте его (Split) на введённый процент (now — тот, что вводится сразу) и (extended — тот, что вводится в течении времени, указанного ниже). Ниже введите продолжительность пролонгированного болюса.</p><p>После выставления значений этот параметр будет отображаться как классический болюс во время терапии, а базальный будет отображаться в виде синей линии, показывающей “растянутое” количество инсулина за период, указанный в поле «Продолжительность».</p><img width="549" height="277" src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/8.jpg" /><h3>Оповещение</h3><p>Вы можете создавать оповещения, они будут появляться в указанное время в верхней части страницы. Эта функция нужна для напоминания, например, о том, что пора проверить уровень сахара в крови.</p><img width="602" height="179" src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/9.jpg" /><h3>Примечания, Вопрос</h3><p>Создавайте примечания и вопросы, чтобы взаимодействовать с другими пользователями на странице Nightscout (например ребенок вводит информацию для родителей или врач для родителей)</p><img width="602" height="96" src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/10.jpg" /><h3>Физическая активность</h3><img width="520" height="134" src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/11.jpg" /><h3>Замена картриджа инсулина</h3><p>Регистрация этих событий поможет вам запомнить даты истечения сроков и обновить соответствующие счетчики Найтскаута, если они включены.</p><img width="551" height="165" src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/12.jpg" /><h3>Окончание временного базала</h3><p>Вы можете указать временные изменения базальной скорости, используя либо процентное изменение (процент), либо абсолютную скорость (величина базала). Для визуализации базала нужно включить эту функцию в меню найтскаута.</p><img width="602" height="84" src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/13.jpg" /><h3>Изменение профиля</h3><p>Если у вас есть несколько профилей, вы можете переключаться между ними, чтобы параметры вашего профиля были актуальны.</p><p>Для временного переключения (например, чтобы задать нагрузку) вы можете выбрать продолжительность — период времени, в течение которого вы будете находиться в указанном профиле.</p><img width="572" height="229" src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/14.jpg" /><h3>Режим редактирования</h3><p>На вашем экране показаны данные, полученные за последние 48 часов. Вы можете редактировать информацию — перемещать или удалять болюсы и корректирующие процедуры.</p><p>В верхнем правом углу экрана есть такой значок:</p><img width="43" height="41" src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/15.png" /><p>Нажмите на него, и вы перейдёте в режим редактирования. При этом значок окрасится в красный цвет.</p><p>Как работать в режиме редактирования, смотрите на скриншотах ниже. В качестве примера представлено 4 разных действия:</p><p>1. Перемещение данных о пище и об инсулине в нужный временной промежуток (в черную область).</p><p>2. Перемещение только данных об инсулине (в синюю область).</p><p>3. Перемещение только данных об углеводах (в белую область).</p><p>4. Удаление терапии полностью (перемещение в красную область).</p><img width="669" height="169" src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/16.jpg" /><p>После этого выйдите из режима редактирования, снова нажав на значок в верхнем правом углу экрана (он станет белым).</p><h3>Главное меню</h3><p>После аутентификации (для входа нажмите на значок замка вверху справа) вам станут доступны различные функции в меню — установка расширений, настройка вашей веб-страницы.</p><img src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/17.jpg" /><p>Вам будут доступны:</p><ul>	<li>отчеты — набор инструментов для составления отчетов;</li>	<li>редактор профиля — возможность изменять и добавлять профили;</li>	<li>инструменты администратора — контроль доступа к сайту и управление базами данных.</li></ul><h4>Отображение в простом виде</h4><img src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/18.jpg" /><p>Есть 4 варианта:</p><ol>	<li>Часы. Отображает текущий показатель ГК, стрелку и время. Серый текст на черном фоне.</li></ol><img src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/19.png" /><ol start="2">	<li>Цвет. Отображает текущий показатель ГК и стрелку. Белый текст на цветном фоне.</li></ol><img src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/20.png" /><ol start="3">	<li>Простой. Отображает текущий показатель ГК. Серый текст на черном фоне.</li>	<li>[+]. Индивидуальная настройка отображения показателей с помощью готового набора элементов.</li></ol><img src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/21.png" /><p>Вы можете настроить отображение следующих показателей:</p><ul>	<li>SGV — датчик уровня глюкозы;</li>	<li>SGV age — время с момента получения последних данных с датчика;</li>	<li>SGV delta — изменение показателей датчика за последние 5 минут;</li>	<li>Trend arrow — стрелка, показывающая растёт уровень глюкозы в крови, падает или находится в стабильном состоянии;</li>	<li>Time — текущее время;</li>	<li>Line break — невидимый элемент, который будет перемещать следующие элементы на следующую строку (по умолчанию они все отображаются на одном уровне).</li></ul><p>У всех параметров есть свойство <b>Size</b> — вы можете увеличить размеры отображаемых значений. Кроме того, все элементы могут быть выбраны в представлении несколько раз, например для отображения разным размером.</p><p>Вы также можете выбрать цвет фона — цветной (Color) или чёрный (Black). В первом случае текущее пороговое значение ГК будет окрашиваться в разные цвета:</p><ul>	<li>зеленый — в пределах нормы;</li>	<li>синий — ниже нормы;</li>	<li>желтый — выше нормы;</li>	<li>красный — критический показатель (намного выше или ниже нормы).</li></ul><p>В поле <b>Show SGV age</b> вы можете выбрать 2 варианта:</p><ul>	<li>Always — показывать время последнего значения ГК всегда;</li>	<li>Only after threshold — показывать время последнего значения ГК только если оно старше, чем время указанное ниже.При этом цветной фон станет серым, а показатель SGV будет зачёркнут.</li></ul><p>При нажатии на кнопку <b>Open my clock view!</b> автоматически сгенерируется URL-адрес, который вы можете добавить в закладки</p><p>Сохранённую ссылку вы сможете потом запустить в полноэкранном режиме в iOS, у вас откроется Nightscout с указанными параметрами отображения. Смахните вправо, чтобы вернуть стандартное отображение.</p><h3>Настройки</h3><p>Настройте интерфейс вашего сайта, как вам удобно. Изменения будут применяться только к вашему текущему браузеру. Также вы сделать эти настройки стандартными, чтобы они работали при запуске любого браузера. Для этого вам нужно напрямую изменить соответствующие системные переменные, указанные ниже, и добавить соответствующие расширения в пункте «Показать расширения».</p><p>Вам необходимо авторизоваться, чтобы сохранить настройки.</p><p>Вы можете отредактировать следующие системные переменные:</p><ul>	<li>единицы измерения;</li>	<li>формат даты;</li>	<li>язык;</li>	<li>масштаб;</li>	<li>отображать базал;</li>	<li>порог отображения болюса;</li>	<li>отображать болюсы мелкими/крупными значками;</li>	<li>активировать сигналы.</li></ul><img src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/22.png" /><p>Здесь вы можете отредактировать следующие системные переменные:</p><ul>	<li>режим редактирования;</li>	<li>показывать необработанные данные RAW;</li>	<li>произвольное название</li>	<li>тема;</li>	<li>показать расширения.</li></ul><img src="https://nightscout.su/uploads/posts/ispolzovanie-nightscout/23.png" /><p>Чтобы сохранить изменения, вам необходимо пройти аутентификацию — нажать «Авторизуйте» и ввести API-secret.</p><p>Если вы хотите отменить все изменения, нажмите «Сбросьте и используйте настройки по умолчанию».</p><p>В разделе «О приложении» вы увидите текущую версию Nightscout.</p>
   ]]></content:encoded>
  </item>
  <item>
   <title>Описание переменных Nightscout</title>
   <link>https://nightscout.su/articles/opisanie-peremennyh-nightscout</link>
   <guid isPermaLink="true">https://nightscout.su/articles/opisanie-peremennyh-nightscout</guid>
   <pubDate>Mon, 02 Dec 2024 00:00:00 +0300</pubDate>
   <author>NightScout.su</author>
   <category><![CDATA[Статьи]]></category>
   <comments>https://nightscout.su/articles/opisanie-peremennyh-nightscout#comments</comments>
   <enclosure url="https://nightscout.su/files/blog/opisanie-peremennyh-nightscout.jpg" type="image/jpeg" />
   <description><![CDATA[<p>Описание переменных Nightscout</p>]]></description>
   <content:encoded><![CDATA[
     <figure>
      <img src="https://nightscout.su/files/blog/opisanie-peremennyh-nightscout.jpg" />
      <figcaption>Описание переменных Nightscout</figcaption>
     </figure>
    <h3>Необходимые</h3><ul>	<li>MONGODB_URI — Строка подключения для вашей базы данных Mongo.</li>	<li>API_SECRET — Секретная парольная фраза длиной не менее 12 символов.</li>	<li>MONGODB_COLLECTION (entries) — Коллекция Mongo, в которой хранятся записи CGM.</li>	<li>DISPLAY_UNITS (mg/dl) — Варианты mg/dl или mmol/L (или просто mmol). Установка на mmol/L переводит весь сервер в mmol/L режим по умолчанию, никаких дополнительных настроек не требуется.</li></ul><h3>Функции</h3><ul>	<li>ENABLE — Используется для включения дополнительных функций, ожидает список, разделенный пробелами, например: careportal rawbg iob, см. плагины ниже</li>	<li>DISABLE — Используется для отключения функций по умолчанию, ожидает список с разделителями-пробелами, например: direction upbatсм. плагины ниже</li>	<li>BASE_URL — Используется для создания ссылок на API вашего сайта, т.е. обратных вызовов Pushover, обычно это URL-адрес вашего сайта Nightscout.</li>	<li>AUTH_DEFAULT_ROLES (readable) — возможные значения readable, denied, или любое допустимое имя роли. Когда readable, любой может просматривать Nightscout без токена. Если установить его на denied, токен будет требоваться при каждом посещении, использование status-only активирует вход на основе секрета API.</li></ul><h3>Оповещения</h3><p>Эти настройки оповещений влияют на все способы доставки (браузер, Pushover, IFTTT и т. д.). Введенные здесь значения и настройки будут использоваться по умолчанию для новых представлений браузера, но будут переопределены, если в пользовательском интерфейсе настроек будут сделаны другие выборы.</p><ul>	<li>ALARM_TYPES (simple) — Тип simple тревоги сравнивает текущую ГК с BG_пороговыми значениями</li>	<li>BG_HIGH (260) — высокий уровень ГК за пределами целевого диапазона, который считается срочным (интерпретирует единицы на основе настройки DISPLAY_UNITS в мг или ммоль)</li>	<li>BG_TARGET_TOP (180) — верхняя граница целевого диапазона, также используется для рисования линии на графике (единицы интерпретируются на основе настройки DISPLAY_UNITS)</li>	<li>BG_TARGET_BOTTOM (80) — нижняя граница целевого диапазона, также используется для рисования линии на графике (единицы интерпретируются на основе настройки DISPLAY_UNITS)</li>	<li>BG_LOW (55) — низкий уровень ГК за пределами целевого диапазона, который считается срочным (интерпретирует единицы на основе настройки DISPLAY_UNITS)</li>	<li>ALARM_URGENT_HIGH (on) — возможные значения on или off</li>	<li>ALARM_URGENT_HIGH_MINS (30 60 90 120) — количество минут, в течение которых нужно откладывать срочные тревожные сигналы высокого уровня, разделенные пробелом для параметров в браузере, сначала используется для отсрочки</li>	<li>ALARM_HIGH (on) — возможные значения on или off</li>	<li>ALARM_HIGH_MINS (30 60 90 120) – количество минут, в течение которых нужно откладывать будильники высокого уровня, разделенные пробелами для параметров в браузере, впервые используется для откладывания сообщений.</li>	<li>ALARM_LOW (on) — возможные значения on или off</li>	<li>ALARM_LOW_MINS (15 30 45 60) — количество минут, в течение которых можно откладывать сигналы низкого уровня, разделенные пробелами для параметров в браузере, впервые используется для отсрочки.</li>	<li>ALARM_URGENT_LOW (on) — возможные значения on или off</li>	<li>ALARM_URGENT_LOW_MINS (15 30 45) — количество минут, в течение которых нужно откладывать срочные тревожные сигналы низкого уровня, разделенные пробелом для параметров в браузере, сначала используется для отсрочки</li>	<li>ALARM_URGENT_MINS (30 60 90 120) — количество минут, в течение которых нужно откладывать срочные сигналы тревоги (которые не помечены как высокие или низкие), разделенные пробелом для параметров в браузере, сначала используется для отсрочки</li>	<li>ALARM_WARN_MINS (30 60 90 120) – количество минут, в течение которых будут откладываться предупреждающие сигналы (которые не помечены как высокие или низкие), разделенные пробелом для параметров в браузере, сначала используется для pushover.</li></ul><h3>Предопределенные значения для настроек вашего браузера (необязательно)</h3><ul>	<li>TIME_FORMAT (12) — возможные значения 12 или 24</li>	<li>DAY_START (7.0) — время начала дня (0.0 — 24.0) для функций, использующих опции дневного/ночного времени</li>	<li>DAY_END (21.0) — время окончания дня (0.0 — 24.0) для функций, использующих опции дневного/ночного времени.</li>	<li>NIGHT_MODE (off) — возможные значения on или off</li>	<li>SHOW_RAWBG (never) — возможные значения always, never или noise. Показывать необработанные (сырые) данные полученные с сенсора</li>	<li>CUSTOM_TITLE (Nightscout) — заголовок Вашего nightscout <strong>Изменит отображаемое имя Nightscout (вверху слева) по умолчанию</strong>.</li></ul><img width="296" height="53" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/1.png" alt="" /><ul>	<li>THEME (colors) — возможные значения default, colors, или colorblindfriendly Цветовая схема.</li></ul><img width="960" height="186" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/2.png" alt="" /><img width="960" height="186" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/3.png" alt="" /><img width="960" height="186" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/4.png" alt="" /><ul>	<li>ALARM_TIMEAGO_WARN (on) — возможные значения on или off</li>	<li>ALARM_TIMEAGO_WARN_MINS (15) — минуты с момента последнего чтения, чтобы вызвать предупреждение</li>	<li>ALARM_TIMEAGO_URGENT (on) — возможные значения on или off</li>	<li>ALARM_TIMEAGO_URGENT_MINS (30) — минуты с момента последнего чтения до срабатывания экстренной тревоги</li>	<li>SHOW_PLUGINS — включенные плагины, по умолчанию все включены</li>	<li>SHOW_FORECAST (ar2) — прогнозы плагина, которые должны отображаться по умолчанию, поддерживает значения, разделенные пробелами, такие как"ar2 openaps"</li>	<li>		LANGUAGE (en) — язык Nightscout. Если недоступен, используется английский язык		<ul>			<li>В настоящее время поддерживаются коды языков: bg (болгарский), cs (чештина), de (немецкий), dk (датский), el (Ελληνικά), en (английский), es (испанский), fi (суоми), fr (французский). , he (עברית), hr (хрватский), hu (венгерский), it (итальянский), ko (한국어), nb (норвежский (букмол)), nl (Нидерланды), pl (польский), pt (португальский (Бразилия) ), ro (Română), ru (Русский), sk (Slovenčina), sv (Svenska), tr (турецкий), zh_cn (中文（简体)), zh_tw (中文（繁體))</li>		</ul>	</li>	<li>		SCALE_Y (log) — тип масштабирования, используемый для оси Y диаграммы во всей системе.		<ul>			<li>Параметр по умолчанию log (логарифмический) позволит вам увидеть больше деталей в нижнем диапазоне, но при этом будет отображаться полный диапазон CGM.</li>			<li>Опция linear имеет равноудаленные галочки. Используемый диапазон является динамическим, поэтому место в верхней части диаграммы не используется впустую.</li>			<li>log-dynamic аналогичен параметрам по умолчанию log, но использует тот же динамический диапазон и linearмасштаб.</li>		</ul>	</li>	<li>EDIT_MODE (on) — возможные значения on или off. Включает значок, позволяющий редактировать процедуры в главном окне.</li></ul><img width="178" height="51" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/5.png" alt="" /><h3>Просмотры</h3><p>Nightscout позволяет создавать настраиваемые упрощенные представления с использованием предопределенного набора элементов. Эта опция доступна по [+]ссылке в главном меню.</p><p>Список доступных предметов:</p><ul>	<li>SGV — уровень глюкозы</li>	<li>SGV age — время с момента последнего чтения SGV</li>	<li>SGV delta — разница показаний сенсора за последние 5 минут</li>	<li>Trend arrow — иконка тренда</li>	<li>Time — текущее время</li>	<li>Line break — невидимый элемент, который будет перемещать следующие элементы на следующую строку (по умолчанию все отображаются на одном уровне)</li></ul><p>Все видимые элементы имеют Size свойство, которое позволяет еще больше настроить вид. Кроме того, все элементы могут появляться в представлении несколько раз.</p><p>Помимо добавления элементов, можно настроить другие аспекты представлений, такие как выбор Color (цветного) или Black (черного) фона. Первый будет показывать текущее пороговое значение ГК (зеленый = в пределах диапазона, синий = ниже диапазона, желтый = выше диапазона, красный = срочно ниже/выше).</p><p>Show SGV age — эта опция заставит SGV age элемент появиться Always (всегда) или только при достижении предопределенного порога: Only after threshold.</p><p>Превышение времени последнего чтения (SGV age threshold) также сделает Color фон серым и зачеркнет SGV.</p><p>Clock view configurator сгенерирует URL-адрес, который можно добавить в закладки.</p><p>В главном меню доступно несколько представлений по умолчанию:</p><ul>	<li>Clock — Показывает текущую ГК, стрелку тренда и время суток. Серый текст на черном фоне.</li>	<li>Color — Показывает текущую ГК и стрелку тренда. Белый текст на цветном фоне.</li>	<li>Simple — Показывает текущую BG. Серый текст на черном фоне.</li></ul><p>Если вы запускаете одно из этих представлений в полноэкранном режиме в iOS, вы можете использовать жест смахивания слева направо, чтобы выйти из представления.</p><h3>Разделенный вид</h3><p>Некоторым пользователям потребуется отображение нескольких Nightscout одновременно. У нас есть специальное представление для этого случая. Представление поддерживает любое количество сайтов в диапазоне от 1 до 8, где контент для экрана может быть загружен из нескольких экземпляров Nightscout. Обратите внимание, что вам по-прежнему необходимо иметь разные установки Nightscout для каждого отслеживаемого Nightscout, включая тот, на котором размещена страница с разделенным представлением — эти переменные только добавляют возможность загрузки нескольких представлений на одну страницу браузера. Чтобы установить URL-адреса, с которых загружается контент, установите:</p><ul>	<li>FRAME_URL_1 — URL-адрес, по которому загружается контент, для первого просмотра (увеличьте число до 8, чтобы получить больше просмотров)</li>	<li>FRAME_NAME_1 — Имя для первой части разделенного экрана на экране (увеличьте число, чтобы назвать больше видов).</li></ul><p>Например:</p><p>FRAME_URL_1 https://jana.ru</p><p>FRAME_NAME_1 Яна</p><p>FRAME_URL_2 https://sveta.ru</p><p>FRAME_NAME_2 Света</p><p>Чтобы отобразить разделенное представление, перейдите к:</p><p>https://вашдомен.ru/split</p><p>Пример 8 разделенного просмотра:</p><img width="1024" height="555" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/6.jpg" alt="" /><h3>Плагины</h3><p>Используемые плагины расширяют возможности отображения информации, отправки уведомлений, срабатывания сигналов тревоги и т. д.</p><p>Встроенные/примеры подключаемых модулей, которые доступны по умолчанию, перечислены ниже. Плагины,необходимо включить, добавив в ENABLE переменную.</p><p>Если вы хотите, чтобы ENABLEплагины  <strong>отображались по умолчанию в любом браузере</strong>, вы должны поместить их в SHOW_PLUGINSпеременную.</p><img width="200" height="321" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/7.png" alt="" /><h4>Плагины по умолчанию</h4><p>Наведение курсора мыши (компьютер) или прикосновение (сенсорный экран) к некоторым плагинам даст вам дополнительную информацию.</p><p>Их можно так же отключить, добавив в переменную DISABLE , напримерDISABLE="direction upbat"</p><h5>delta (BG Delta)</h5><p>Вычисляет и отображает изменение между двумя последними значениями ГК.</p><h5>direction (BG Direction)</h5><p>Отображает направление тренда.</p><h5>upbat (аккумулятор загрузчика)</h5><p>Отображает самое последнее состояние батареи с телефона загрузки. Используйте эти расширенные настройки для настройки поведения:</p><ul>	<li>UPBAT_ENABLE_ALERTS (false) — установите, trueчтобы включить оповещения о разрядке батареи через Pushover и IFTTT.</li>	<li>UPBAT_WARN (30) — Минимальный процент заряда батареи для срабатывания предупреждения.</li>	<li>UPBAT_URGENT (20) — Минимальный процент заряда батареи для срабатывания экстренной тревоги.</li></ul><h5>timeagO</h5><p>Отображает время с момента последней записи CGM. Используйте эти расширенные настройки для настройки поведения:</p><ul>	<li>TIMEAGO_ENABLE_ALERTS (false) — установите, trueчтобы включить оповещения об устаревших данных через Pushover и IFTTT.</li>	<li>ALARM_TIMEAGO_WARN (on) — возможные значения on или off</li>	<li>ALARM_TIMEAGO_WARN_MINS (15) — минуты с момента последнего чтения, чтобы вызвать предупреждение</li>	<li>ALARM_TIMEAGO_URGENT (on) — возможные значения on или off</li>	<li>ALARM_TIMEAGO_URGENT_MINS (30) — минуты с момента последнего чтения до срабатывания экстренной тревоги</li></ul><h5>devicestatus (Состояние устройства)</h5><p>Используется c upbat и другими плагинами для отображения информации о состоянии устройства. Поддерживает DEVICESTATUS_ADVANCED="true" расширенную настройку для отправки всех статусов устройств клиенту для последующего использования и для поддержки других подключаемых модулей.</p><p>Пример: upbat с использованием devicestatus.</p><img width="196" height="99" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/8.png" alt="" /><h5>simplealarms (Простые сигналы тревоги ГК)</h5><p>Использует BG_HIGH, BG_TARGET_TOP, BG_TARGET_BOTTOM, BG_LOW пороги для генерации сигналов тревоги.</p><ul>	<li>Включено по умолчанию, если установлено 1 из этих пороговых значений или ALARM_TYPES установлено simple.</li></ul><img width="290" height="290" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/9.png" alt="" /><h5>profile (Профиль лечения)</h5><p>Добавьте ссылку на редактор профилей и разрешите вводить настройки профиля лечения. Также использует расширенную настройку:</p><ul>	<li>PROFILE_HISTORY (off) — возможные значения on или off. Включить / отключить возможность NS хранить историю ваших профилей (все еще экспериментально)</li>	<li>PROFILE_MULTIPLE (off) — возможные значения on или off. Включить/отключить возможность NS обрабатывать и переключаться между несколькими профилями лечения</li></ul><h4>Расширенные плагины:</h4><h5>careportal (Обслуживающий портал)</h5><p>Care Portal — важный плагин, предоставляющий доступ к интерфейсу ввода данных. Разблокируйте его, введя свой секрет API с помощью значка замка вверху справа, затем используйте + значок, чтобы зарегистрировать лечение.</p><img width="302" height="242" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/10.jpg" alt="" /><img width="257" height="397" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/11.jpg" alt="" /><h5>boluscalc (Калькулятор болюса)</h5><img width="355" height="697" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/12.png" alt="" /><h5>food (Пользовательские продукты)</h5><p>Дополнительный плагин, позволяющий добавлять продукты из базы данных в Bolus Wizard и включать файлы.</p><img width="1024" height="495" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/13.png" alt="" /><h5>rawbg (Необработанные данные сенсора)</h5><p>Вычисляет ГК, используя записи датчика и калибровки, и отображает альтернативные значения ГК и уровни шума. Значения по умолчанию, которые можно изменить с помощью расширенных настроек</p><ul>	<li>		DISPLAY (unsmoothed) — позволяет пользователю контролировать, какой алгоритм используется для расчета отображаемых необработанных значений ГК с использованием самой последней записи калибровки.		<ul>			<li>unfiltered — Исходный уровень ГК рассчитывается путем применения калибровки к нефильтрованному значению записи уровня глюкозы.</li>			<li>filtered — Исходный уровень ГК рассчитывается путем применения калибровки к отфильтрованному значению записи уровня глюкозы. Отфильтрованные значения записи глюкозы обычно создаются CGM путем скользящего среднего значения нефильтрованных значений для получения сглаженного значения при высоком шуме датчика.</li>			<li>unsmoothed — Необработанный уровень ГК рассчитывается путем нахождения отношения рассчитанного отфильтрованного значения (того же значения, рассчитанного с помощью filtered настройки) к сообщаемому значению глюкозы. Отображаемое необработанное значение ГК рассчитывается путем деления рассчитанного нефильтрованного значения (то же самое значение, рассчитанное с помощью unfiltered настройки) на коэффициент. Эффект заключается в преувеличении изменений направления тренда, чтобы изменения тренда были более заметными для пользователя. Это устаревший алгоритм расчета необработанной ГК.</li>		</ul>	</li></ul><img width="426" height="288" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/14.png" alt="" /><h5>iob (Инсулин на борту)</h5><p>Добавляет визуализацию таблетки IOB в клиенте и вычисляет значения, которые используются другими плагинами. Использует лечение с дозами инсулина и diaполями и sens из профиля лечения.</p><h5>cob (Углеводы на борту)</h5><p>Добавляет визуализацию таблетки COB в клиенте и вычисляет значения, используемые другими плагинами. Использует лечение с дозами углеводов и поля carbs_hr, carbratio и sens из профиля лечения.</p><img width="182" height="111" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/15.png" alt="" /><h5>bwp (Предварительный просмотр Bolus Wizard)</h5><img width="266" height="282" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/16.png" alt="" /><p>Этот плагин предназначен для автоматического откладывания сигналов тревоги, когда CGM указывает на высокий уровень сахара в крови, но также есть инсулин на борту (IOB), и, во-вторых, предупреждает пользователя о том, что может быть полезно измерить уровень сахара в крови с помощью глюкометра и дозировать инсулин. согласно расчетам помпы или по указанию обученных медицинских работников. <strong>Значения, предоставляемые подключаемым модулем, предоставляются в качестве эталона на основе данных CGM и настроенной вами чувствительности к инсулину и не предназначены для использования в качестве эталона для расчета болюса.</strong> Плагин вычисляет количество болюса, когда оно превышает целевое значение, генерирует сигналы тревоги, когда вам следует подумать о проверке и введении болюса, и откладывает сигналы тревоги, когда имеется достаточно IOB для покрытия высокого уровня ГК. Использует результаты iob плагина и sens, target_high, и target_low поля из профиля. Значения по умолчанию, которые можно изменить с помощью расширенных настроек</p><ul>	<li>BWP_WARN (0.50) — Если BWP&gt; BWP_WARN, сработает предупредительный сигнал.</li>	<li>BWP_URGENT (1.00) — Если BWP&gt; BWP_URGENT, сработает срочная тревога.</li>	<li>BWP_SNOOZE_MINS (10) — минуты, чтобы вздремнуть, когда IOB достаточно, чтобы покрыть высокий уровень ГК.</li>	<li>BWP_SNOOZE— ( 0.10) Если уровень ГК выше, то сигналы тревоги target_high и BWP&lt; BWP_SNOOZE будут отложены на BWP_SNOOZE_MINS.</li></ul><h5>cage (Возраст канюли)</h5><p>Подсчитывает количество часов, прошедших с момента последнего зарегистрированного события смены канюли.</p><ul>	<li>CAGE_ENABLE_ALERTS (false) — установите true для включения уведомлений о предстоящей замене канюли.</li>	<li>CAGE_INFO (44) — если прошло Х часов (по умолчанию 44) с последней смены, пользователь будет предупрежден о предстоящей замене канюли. Счетчик отображается желтым цветом.</li>	<li>CAGE_WARN (48) — если прошло Х часов (по умолчанию 48) с последней смены, пользователь будет предупрежден о необходимости замены канюли. Счетчик отображается красным цветом.</li>	<li>CAGE_URGENT(72) -если прошло Х часов (по умолчанию 72) с последней смены, пользователю будет выдано постоянное предупреждение о просроченном изменении.</li>	<li>CAGE_DISPLAY (hours) — Возможные значения: «часы» или «дни». Если выбрано «дни» и возраст канюли больше 24 часов, число отображается в днях и часах.</li></ul><h5>sage (Возраст датчика)</h5><p>Подсчитывает количество дней и часов с момента последнего Sensor Startи Sensor Changeзарегистрированного лечения.</p><ul>	<li>SAGE_ENABLE_ALERTS (false) — установите, true чтобы включить уведомления, чтобы напомнить вам о предстоящей замене датчика.</li>	<li>SAGE_INFO (144) — Если время, прошедшее с момента последнего события датчика, совпадает SAGE_INFO, пользователь будет предупрежден о предстоящей замене датчика. Счетчик отображается желтым цветом.</li>	<li>SAGE_WARN (164) — Если время, прошедшее с момента последнего события датчика, совпадает SAGE_WARN, пользователь будет предупрежден о необходимости замены/перезапуска датчика. Счетчик отображается красным цветом.</li>	<li>SAGE_URGENT (166) — Если время, прошедшее с момента последнего события датчика, совпадает с SAGE_URGENT, пользователю будет выдано постоянное предупреждение о просроченном изменении.</li></ul><h5>iage (Возраст инсулина)</h5><p>Подсчитывает количество дней и часов с момента последней Insulin Change зарегистрированной обработки.</p><ul>	<li>IAGE_ENABLE_ALERTS (false) — установите true для включения уведомлений о предстоящей замене резервуара с инсулином.</li>	<li>IAGE_INFO (44) — Если время, прошедшее с момента последнего события смены инсулина больше заданного в этой настройке, будет предупреждено о предстоящей замене резервуара с инсулином.Счетчик отображается желтым цветом.</li>	<li>IAGE_WARN (48) — Если время, прошедшее с момента последнего события смены инсулина больше заданного в этой настройке, пользователь будет предупрежден о необходимости замены резервуара для инсулина.Счетчик отображается красным цветом.</li>	<li>IAGE_URGENT (72) — Если время прошедшее с момента последнего события смены инсулина больше заданного в этой настройке, пользователю будет выдано постоянное предупреждение о просроченном изменении.</li></ul><img width="804" height="225" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/17.png" alt="" /><h5>bage (Возраст батареи)</h5><p>Подсчитывает количество дней и часов с момента последней последнего события замены батареи.</p><ul>	<li>BAGE_ENABLE_ALERTS (false) — установите true для включения уведомлений о предстоящей замене батареи помпы.</li>	<li>BAGE_DISPLAY (days) — установите hours для отображения времени с момента последнего события замены батареи в часах.</li>	<li>BAGE_INFO (312) — если время, прошедшее с момента последней замены больше указанного, пользователь будет предупрежден о предстоящей замене батареи помпы (по умолчанию 312 часов — это 13 дней).</li>	<li>BAGE_WARN (336) — если время, прошедшее с момента последней замены больше указанного, пользователь будет предупрежден о необходимости замены батареи помпы (по умолчанию 336 часов — это 14 дней).</li>	<li>BAGE_URGENT (360) — если время, прошедшее с момента последней замены больше указанного, пользователю будет выдано постоянное предупреждение о просроченном изменении (по умолчанию 360 часов — 15 дней).</li></ul><h5>treatmentnotify (Уведомления о лечении)</h5><p>Генерирует уведомления, когда лечение было введено, и откладывает будильник через несколько минут после лечения.</p><ul>	<li>TREATMENTNOTIFY_SNOOZE_MINS (10) — количество минут, в течение которых уведомления будут откладываться после ввода лечения.</li>	<li>TREATMENTNOTIFY_INCLUDE_BOLUSES_OVER (0) — значение U, при превышении которого болюс вызовет уведомление и повтор сигнала тревоги.</li></ul><h5>basal (Базальный профиль)</h5><img width="180" height="46" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/18.png" alt="" /><p>Добавляет визуализацию базальной таблетки для отображения базальной скорости в текущее время. Также позволяет bwp плагину рассчитать временные базальные предложения коррекции. Использует basal поле из профиля . Также использует расширенную настройку:</p><ul>	<li>BASAL_RENDER (none) — Возможные значения: none, default, или icicle (сосульки)</li></ul><img width="840" height="130" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/19.png" alt="" /><img width="840" height="130" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/20.png" alt="" /><h5>bolus(Введение болюса)</h5><p>Настройки для настройки визуализации болюса</p><ul>	<li>BOLUS_RENDER_OVER (0) — значение U, при котором метки болюса используют формат, определенный в BOLUS_RENDER_FORMAT. Это значение может быть целым числом или числом с плавающей запятой, например, 0,3, 1,5, 2 и т. д.</li>	<li>BOLUS_RENDER_FORMAT (default) — Возможные значения: hidden, default (с начальным нулем и U), concise (с U, без ведущего нуля) и minimal(без начального нуля и U).</li>	<li>BOLUS_RENDER_FORMAT_SMALL (default) — Возможные значения: hidden, default (с начальным нулем и U), concise (с U, без ведущего нуля) и minimal (без начального нуля и U).</li></ul><h5>bridge (Мост Share2Nightscout)</h5><p>При считывании уровня глюкозы непосредственно из службы Dexcom Share используются следующие расширенные настройки:</p><ul>	<li>BRIDGE_USER_NAME — Ваше имя пользователя для сервиса Share.</li>	<li>BRIDGE_PASSWORD — Ваш пароль для сервиса Share.</li>	<li>BRIDGE_INTERVAL (150000 2,5 минуты) — время (в миллисекундах) ожидания между каждым обновлением.</li>	<li>BRIDGE_MAX_COUNT (1) — количество записей, которые нужно попытаться извлечь за одно обновление.</li>	<li>BRIDGE_FIRST_FETCH_COUNT (3) — Изменяет максимальное количество только во время самого первого обновления.</li>	<li>BRIDGE_MAX_FAILURES (3) — Сколько неудач, прежде чем сдаться.</li>	<li>BRIDGE_MINUTES (1400) — временное окно для поиска новых данных для каждого обновления (значение по умолчанию — один день в минутах).</li>	<li>BRIDGE_SERVER(«) — пустое значение по умолчанию используется для получения данных с серверов Dexcom в США. Установите на (EU), чтобы вместо этого получать данные с европейских серверов.</li></ul><h5>mmconnect (Мост МиниМед Коннект)</h5><p>Передача данных MiniMed Connect в режиме реального времени с сервера Medtronic CareLink в Nightscout</p><ul>	<li>MMCONNECT_USER_NAME — Ваше имя пользователя для CareLink Connect.</li>	<li>MMCONNECT_PASSWORD — Ваш пароль для CareLink Connect.</li>	<li>MMCONNECT_INTERVAL (60000 1 минута ) — количество миллисекунд ожидания между запросами к серверу CareLink.</li>	<li>MMCONNECT_MAX_RETRY_DURATION (32) — максимальное общее количество секунд, которое необходимо потратить на повторение неудачных запросов перед отказом.</li>	<li>MMCONNECT_SGV_LIMIT (24) — максимальное количество последних значений глюкозы сенсора для отправки в Nightscout по каждому запросу.</li>	<li>MMCONNECT_VERBOSE — Установите для этого параметра значение «true», чтобы регистрировать информацию запроса CareLink на консоли.</li>	<li>MMCONNECT_STORE_RAW_DATA — Установите для этого параметра значение «true», чтобы сохранять необработанные данные, возвращенные из CareLink, в виде type: "carelink_raw" записей базы данных (полезно для разработки).</li>	<li>MMCONNECT_SERVER — Установите это значение EU если вы используете европейские услуги Medtronic.</li></ul><h5>pump (Контроль помпы)</h5><img width="282" height="104" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/21.png" alt="" /><p>Универсальный мониторинг помпы для OpenAPS, MiniMed Connect, RileyLink, t:slim, и это еще не все</p><ul>	<li>Требуется установка DEVICESTATUS_ADVANCED="true"</li>	<li>PUMP_ENABLE_ALERTS (false) — установите, true чтобы включить уведомления для батареи помпы и резервуара.</li>	<li>PUMP_WARN_ON_SUSPEND (false) — установите, true чтобы получать сигнал тревоги при остановке насоса.</li>	<li>PUMP_FIELDS (reservoir battery) — поля для отображения по умолчанию. Любое из следующих полей: reservoir, battery, clock, status, и device</li>	<li>PUMP_RETRO_FIELDS (reservoir battery clock) — поля для отображения в ретро-режиме. Любое из вышеперечисленных полей.</li>	<li>PUMP_WARN_CLOCK (30) — количество минут назад, которое должно быть превышено до срабатывания оповещения.</li>	<li>PUMP_URGENT_CLOCK (60) — количество минут назад, которое должно быть превышено, прежде чем сработает срочная тревога.</li>	<li>PUMP_WARN_RES (10) — Количество оставшихся единиц, предупреждение будет срабатывать при падении ниже этого порога.</li>	<li>PUMP_URGENT_RES (5) — количество оставшихся единиц, при падении ниже этого порога будет срабатывать срочный сигнал тревоги.</li>	<li>PUMP_WARN_BATT_P (30) — % оставшегося заряда батареи помпы, при снижении ниже этого порога будет срабатывать предупреждение.</li>	<li>PUMP_URGENT_BATT_P (20) — % оставшегося заряда батареи помпы, при падении ниже этого порога срабатывает срочный сигнал тревоги.</li>	<li>PUMP_WARN_BATT_V (1.35) — Напряжение (если проценты недоступны) батареи помпы, при падении ниже этого порога будет срабатывать предупреждение.</li>	<li>PUMP_URGENT_BATT_V (1.30) — Напряжение (если проценты недоступны) батареи помпы, при падении ниже этого порога будет срабатывать срочная тревога.</li>	<li>PUMP_WARN_BATT_QUIET_NIGHT (false) — Не генерировать сигналы тревоги батареи ночью.</li></ul><h5>openaps (замкнутая петля openaps)</h5><img width="444" height="101" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/22.png" alt="" /><p>Интегрированный мониторинг петли OpenAPS использует следующие расширенные настройки:</p><p>Требуется установить DEVICESTATUS_ADVANCED="true"</p><p>OPENAPS_ENABLE_ALERTS (false) — установите true для включения уведомлений, когда OpenAPS не зацикливается. Если OpenAPS будет отключен в течение определенного периода времени, вы можете добавить OpenAPS Offline событие на ожидаемую продолжительность из Careportal, чтобы избежать получения предупреждений.</p><p>OPENAPS_WARN (30) — количество минут с момента последнего цикла, которое должно пройти до срабатывания оповещения.</p><p>OPENAPS_URGENT (60) — количество минут с момента последней петли, которое должно пройти, прежде чем сработает срочная тревога.</p><p>OPENAPS_FIELDS (status-symbol status-label iob meal-assist rssi) — поля для отображения по умолчанию. Любое из следующих полей: status-symbol, status-label, iob, meal-assist, freq, и rssi</p><p>OPENAPS_RETRO_FIELDS (status-symbol status-label iob meal-assist rssi) — поля для отображения в ретро-режиме. Любое из вышеперечисленных полей.</p><p>OPENAPS_PRED_IOB_COLOR (#1e88e5) — цвет, используемый для линий предсказания IOB. Цвета могут быть в #RRGGBBформате, но могут использоваться и другие единицы измерения цвета CSS .</p><p>OPENAPS_PRED_COB_COLOR (#FB8C00) — цвет, используемый для линий предсказания COB. Тот же формат, что и выше.</p><p>OPENAPS_PRED_ACOB_COLOR (#FB8C00) — цвет, используемый для линий предсказания ACOB. Тот же формат, что и выше.</p><p>OPENAPS_PRED_ZT_COLOR (#00d2d2) — цвет, используемый для линий предсказания ZT. Тот же формат, что и выше.</p><p>OPENAPS_PRED_UAM_COLOR (#c9bd60) — цвет, используемый для линий предсказания UAM. Тот же формат, что и выше.</p><p>OPENAPS_COLOR_PREDICTION_LINES (true) — включает/отключает цветные линии по сравнению с классическим фиолетовым цветом.</p><h5>loop (Петля)</h5><img width="191" height="34" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/23.png" alt="" /><p>Мониторинг приложения iOS Loop использует следующие расширенные настройки:</p><ul>	<li>Требуется установить DEVICESTATUS_ADVANCED="true"</li>	<li>LOOP_ENABLE_ALERTS (false) — установите, true чтобы включить уведомления, когда Loop не зацикливается.</li>	<li>LOOP_WARN (30) — количество минут с момента последнего цикла, которое должно пройти до срабатывания оповещения.</li>	<li>LOOP_URGENT (60) — количество минут с момента последнего цикла, которое необходимо преодолеть, прежде чем сработает срочная тревога.</li>	<li>Добавить SHOW_FORECAST=loop чтобы показать прогнозируемый уровень ГК.</li></ul><p>Для удаленного переключения необходимо настроить следующие расширенные параметры:</p><ul>	<li>LOOP_APNS_KEY — Ключ службы Apple Push Notifications (APN), созданный на веб-сайте Apple Developer.</li>	<li>LOOP_APNS_KEY_ID — Идентификатор ключа для вышеуказанного ключа.</li>	<li>LOOP_DEVELOPER_TEAM_ID — Ваш идентификатор команды разработчиков Apple.</li>	<li>LOOP_PUSH_SERVER_ENVIRONMENT — (необязательно) Установите для этого параметра значение, production если вы используете профиль обеспечения, в котором указана производственная среда aps, например, при распространении сборок через TestFlight.</li></ul><h5>override (Режим переопределения)</h5><p>Дополнительный мониторинг самодельных автоматизированных систем доставки инсулина для отображения переопределений в режиме реального времени, таких как «Скорая еда» или «Режим упражнений»:</p><ul>	<li>Требуется установить DEVICESTATUS_ADVANCED="true"</li></ul><h5>xdripjs (xDrip-js)</h5><p>Интегрированный мониторинг xDrip-js использует следующие расширенные настройки:</p><ul>	<li>Требуется установить DEVICESTATUS_ADVANCED="true"</li>	<li>XDRIPJS_ENABLE_ALERTS (false) — установите, trueчтобы включить уведомления, когда состояние CGM не в порядке или напряжение батареи падает ниже порогового значения.</li>	<li>XDRIPJS_STATE_NOTIFY_INTRVL (0.5) — установить количество часов между уведомлениями о состоянии CGM.</li>	<li>XDRIPJS_WARN_BAT_V (300) — Напряжение любой батареи передатчика, при падении ниже этого порога срабатывает предупреждение.</li></ul><h5>alexa</h5><p>Интеграция с Amazon Alexa, подробная <a href="https://github.com/buzlachok/cgm-remote-monitor/blob/master/docs/plugins/alexa-plugin.md" title="">инструкция по настройке</a></p><h5>speech (Речь)</h5><p>Плагин синтеза речи. При включении озвучивает значения уровня глюкозы в крови, IOB и сигналы тревоги. Обратите внимание, что вы должны установить параметр ЯЗЫК на сервере, чтобы получить все переведенные сигналы тревоги.</p><h5>cors</h5><p>Включенный <a href="https://en.wikipedia.org/wiki/Cross-origin_resource_sharing">CORS</a> , чтобы другие веб-сайты могли отправлять запросы на ваш сайт Nightscout, использует следующие расширенные настройки:</p><ul>	<li>CORS_ALLOW_ORIGIN (*) — Список сайтов, которым разрешено делать запросы</li></ul><h5>dbsize (Размер базы данных)</h5><p>Показать размер базы данных Nightscout в процентах от заявленного доступного пространства или в МБ.</p><img width="358" height="71" src="https://nightscout.su/uploads/posts/opisanie-peremennyh-nightscout/24.png" alt="" /><p>Многие развертывания Nightscout используют VPS, размер которого ограничен. Через некоторое время, по мере роста объема хранимых данных, может случиться так, что этот предел будет достигнут, и система не сможет хранить новые данные. Этот плагин предоставляет таблетку, которая указывает размер базы данных и показывает (если настроено) предупреждения о достижении предела пространства.</p><p><strong>ВАЖНО:</strong> Этот плагин может только проверять, сколько места уже занимает база данных, но не может определить максимальный размер, доступный для нее на сервере. Чтобы иметь правильные сигналы тревоги и реалистичный процент, DBSIZE_MAX необходимо правильно настроить — в соответствии с вашей конфигурацией хостинга mongoDB.</p><p><strong>ПРИМЕЧАНИЕ.</strong> Этот плагин использует db.stats() для сообщения о логическом размере базы данных, который может отличаться от физического размера базы данных на сервере.</p><p>Все размеры выражаются целыми числами в мегабайтах. 1 MiB == 1024 KiB == 1024*1024 B</p><ul>	<li>DBSIZE_MAX (496) — максимально допустимый размер базы данных на вашем сервере mongoDB в МБ. Вам нужно настроить это значение в соответствии с ограничениями хостинга вашей базы данных.</li>	<li>DBSIZE_WARN_PERCENTAGE (60) — пороговое значение для отображения первого предупреждения о размере базы данных. Когда база данных достигнет этого процента DBSIZE_MAXразмера, таблетка покажет размер желтым цветом.</li>	<li>DBSIZE_URGENT_PERCENTAGE (75) — пороговое значение для отображения срочного предупреждения о размере базы данных. Когда база данных достигает этого процента DBSIZE_MAXразмера, необходимо срочно сделать резервную копию и очистить старые данные. При этом проценте информационная табличка становится красной.</li>	<li>DBSIZE_ENABLE_ALERTS (false) — установите, true чтобы включить уведомления о размере базы данных.</li>	<li>DBSIZE_IN_MIB (false) — установите, true чтобы отображать размер базы данных в МБ вместо процентов по умолчанию.</li></ul><p>Этот плагин должен быть включен по умолчанию, при необходимости его можно отключить, добавив dbsizeв список отключенных плагинов, например: DISABLE="dbsize".</p>
   ]]></content:encoded>
  </item>
  <item>
   <title>Установка Nightscout на Windows Server</title>
   <link>https://nightscout.su/articles/ustanovka-nightscout-na-windows-server</link>
   <guid isPermaLink="true">https://nightscout.su/articles/ustanovka-nightscout-na-windows-server</guid>
   <pubDate>Fri, 22 Nov 2024 00:00:00 +0300</pubDate>
   <author>NightScout.su</author>
   <category><![CDATA[Статьи]]></category>
   <comments>https://nightscout.su/articles/ustanovka-nightscout-na-windows-server#comments</comments>
   <enclosure url="https://nightscout.su/files/blog/1691405080_nightscout-windows.png" type="image/jpeg" />
   <description><![CDATA[<p>В данной статье рассказывается как пошагово настроить своими руками свой сервер NightScout на <b>Windows Server</b> для мониторинга сахаров у диабетиков!</p>]]></description>
   <content:encoded><![CDATA[
     <figure>
      <img src="https://nightscout.su/files/blog/1691405080_nightscout-windows.png" />
      <figcaption>Установка Nightscout на Windows Server</figcaption>
     </figure>
    <h3>Инструменты и сервисы</h3><p>Для настройки локального сервера Nightscout использовалось следующее программное обеспечение. Все инструменты бесплатны, за исключением операционной системы Windows Server.</p><ul>	<li><a href="https://www.microsoft.com/en-us/cloud-platform/windows-server" target="_blank">Windows Server 2016, 2019, или 2022</a></li>	<li><a href="https://my.visualstudio.com/Downloads?q=Visual%20Studio%20Express%202015%20for%20Windows%20Desktop" target="_blank">Visual Studio Express 2015 для Windows Desktop</a></li>	<li><a href="https://fastdl.mongodb.org/windows/mongodb-windows-x86_64-4.4.25-signed.msi" target="_blank">MongoDB Community Server 4.4.25</a></li>	<li><a href="https://www.python.org/downloads/release/python-2711/" target="_blank">Python 2.7.11</a></li>	<li><a href="https://github.com/git-for-windows/git/releases/download/v2.42.0.windows.2/Git-2.42.0.2-64-bit.exe" target="_blank">Git для Windows 2.42.0</a></li>	<li><a href="https://nodejs.org/download/release/v16.20.2/node-v16.20.2-x64.msi" target="_blank">Node.js 16.20.2 x64</a></li></ul><p>Чтобы начать работу над проектом, сначала необходимо установить Windows Server, затем сервер базы данных. Другие сторонние приложения будут установлены позже.</p><h2>Установка Windows Server</h2><p>1. Установите Windows Server 2016:</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/1.png" style="max-width:100%;" alt="" /><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/2.png" style="max-width:100%;" alt="" /><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/3.png" style="max-width:100%;" alt="" /><p>2. Измените имя рабочей станции на Nightscout и, при необходимости, присоедините её к домену, если он у вас есть:</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/4.png" style="max-width:100%;" alt="" /><p>3. Откройте Центр обновления Windows, нажмите "Дополнительные параметры" и установите флажок "Получать обновления для других продуктов Microsoft при обновлении Windows". Нажмите кнопку "Назад", а затем "Проверить наличие обновлений". Пока вы выполняете другие задачи, обновления Windows будут загружаться в фоновом режиме, что в конечном итоге сократит время их загрузки и установки позже.</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/5.png" style="max-width:100%;" alt="" /><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/6.png" style="max-width:100%;" alt="" /><p>4. Перезагрузите сервер</p><p>5. Установите Visual Studio Express 2015 для рабочего стола Windows, используя параметры по умолчанию.</p><h2>Сервер баз данных MongoDB</h2><p>В последней версии Mongo локальное размещение базы данных MongoDB гораздо более автоматизировано, чем в предыдущих версиях. Запустите процесс установки, оставив включенными все параметры по умолчанию, за исключением следующих изменений.</p><p>1. Выберите Полную установку в типе установки.</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/7.png" style="max-width:100%;" alt="" /><p>2. Когда появится экран настройки службы, убедитесь, что установлен флажок Установить MongoD как службу и что выбран параметр Запускать службу от имени пользователя сетевой службы.</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/8.png" style="max-width:100%;" alt="" /><p>3. Когда вам будет предложено установить Mongo Compass, инструмент с графическим интерфейсом базы данных, снимите флажок.</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/9.png" style="max-width:100%;" alt="" /><p>Как только Mongo установлен, сервис запускается автоматически.</p><h4>Конфигурация базы данных</h4><p>Настройка включает в себя создание базы данных Nightscout и присвоение ей учетных данных. Вам понадобится эта информация и некоторая информация, приведенная выше, для создания строки подключения, чтобы Nightscout знал, где найти базу данных.</p><p>1. Откройте новую командную строку администратора</p><p>2. Откройте клиент Mongo, выполнив C:\Program Files\MongoDB\Server\4.4\bin\mongo.exe</p><p>3. В появившемся окне > создайте базу данных Nightscout:</p>use Nightscout<p>4. Создайте имя пользователя и пароль для доступа к базе данных и разрешите учетной записи доступ на чтение/запись к базе данных (для простоты используйте имя пользователя и пароль в качестве учетных данных учетной записи):</p>db.createUser({user: "username", pwd: "password", roles:["readWrite"]})<p>Когда вы увидите сообщение об успешном добавлении пользователя, это будет означать, что установка и настройка сервиса MongoDB завершена.</p><h4>Строка подключения</h4><p>Теперь, когда сервис установлен и настроен, вам нужно будет указать строку подключения. Эта строка будет использоваться для настройки Nightscout, чтобы он знал, где находится база данных и как к ней подключиться. Строка подключения содержит имя пользователя, пароль, имя хоста или адрес, порт MongoDB и имя базы данных:</p>mongodb://:@:/<p>Строка подключения для Nightscout, работающего на том же хосте со всеми указанными выше настройками, будет выглядеть следующим образом:</p>mongodb://username:password@localhost:27017/Nightscout<h3>Установка другого программного обеспечения</h3><p>1. Установите Git</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/10.png" style="max-width:100%;" alt="" /><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/11.png" style="max-width:100%;" alt="" /><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/12.png" style="max-width:100%;" alt="" /><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/13.png" style="max-width:100%;" alt="" /><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/14.png" style="max-width:100%;" alt="" /><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/15.png" style="max-width:100%;" alt="" /><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/16.png" style="max-width:100%;" alt="" /><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/17.png" style="max-width:100%;" alt="" /><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/18.png" style="max-width:100%;" alt="" /><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/19.png" style="max-width:100%;" alt="" /><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/20.png" style="max-width:100%;" alt="" /><p>2. Установите Python, не забыв добавить Python в переменную окружения PATH:</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/21.png" style="max-width:100%;" alt="" /><p>3. Установите Node.js</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/22.png" style="max-width:100%;" alt="" /><p>4. Перезагрузите сервер</p><h4>Обновления Windows</h4><p>В этом выпуске Windows Server возможности центра обновления Windows существенно улучшились. Ожидайте, что вы загрузите пару накопительных обновлений и перезагрузитесь один раз для завершения установки. На всякий случай всегда проверяйте наличие дополнительных обновлений после каждой перезагрузки.</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/23.png" style="max-width:100%;" alt="" /><p>Когда вы закончите установку, вы увидите этот экран, на котором будут установлены все обновления Windows:</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/24.png" style="max-width:100%;" alt="" /><p>Обновления Windows теперь доставляются и устанавливаются автоматически. Это позволяет вам по-прежнему эффективно управлять системами, доступными через Интернет (читай: возможно, не создавать ботнеты), при этом задачи по техническому обслуживанию остаются на низком уровне. После установки обновлений Windows система перезагрузится, и процесс Nightscout запустится автоматически, как только вы это настроите позже.</p><h4>Правила брандмауэра Windows</h4><p>По умолчанию брандмауэр Windows разрешает вам подключаться к серверу Nightscout локально, но запрещает подключения к внешним хостам. Чтобы разрешить стандартный HTTP-трафик в системе, вам необходимо создать правило брандмауэра Windows.</p><p>1. Откройте брандмауэр Windows с расширенной защитой и нажмите "Входящие правила", затем "Новое правило"</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/25.png" style="max-width:100%;" alt="" /><p>2. Выберите "Порт" и нажмите "Далее".</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/26.png" style="max-width:100%;" alt="" /><p>3. Выберите "Определенные локальные порты" и введите 80, стандартный порт для HTTP-трафика, и нажмите "Далее"</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/27.png" style="max-width:100%;" alt="" /><p>4. Оставьте выбранным параметр "Разрешить подключение" и нажмите "Далее".</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/28.png" style="max-width:100%;" alt="" /><p>5. Установите флажки для всех трех доменов и нажмите кнопку Далее</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/29.png" style="max-width:100%;" alt="" /><p>6. Назовите правило "Разрешить вход по протоколу HTTP" и нажмите "Готово"</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/30.png" style="max-width:100%;" alt="" /><p>HTTP-трафик теперь будет пропускаться через брандмауэр и передаваться в Nightscout. Этот процесс не требуется выполнять для MongoDB, поскольку Nightscout собирается подключаться к Mongo через локальный порт с того же сервера. Если вам нужно получить доступ к Mongo из внешней системы, вы можете повторить описанный выше процесс для порта 27017.</p><h3>Скачайте и запустите Nightscout</h3><p>Теперь, когда операционная система и база данных установлены, вы готовы к клонированию и установке Nightscout.</p><h4>Скачивание Nightscout</h4>Запустите командную строку NodeJS от имени администратора. Создайте на своем сервере папку, в которую будет загружаться Nightscout. Я выбрал C:\Nightscout\. Клонируйте главный репозиторий Nightscout в этот каталог, обязательно соблюдая конечную точку в команде git:cd \mkdir Nightscoutcd Nightscoutgit clone https://github.com/nightscout/cgm-remote-monitor.git .<p>Git загрузит файлы Nightscout в каталог Nightscout.</p><h4>Установка и настройка</h4><p>Следующим шагом будет установка переменных среды на системном уровне, а не на уровне пользователя. Это необходимо, поскольку вы хотите, чтобы любой пользователь, особенно СИСТЕМНЫЙ, имел доступ к этим переменным при загрузке системы, но не вошел в систему.</p><p>1. Щелкните правой кнопкой мыши "Этот компьютер" на рабочем столе и выберите "Свойства"</p><p>2. Нажмите "Дополнительные системные настройки" на левой панели окна "Свойства системы"</p><p>3. Нажмите кнопку "Переменные среды"</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/31.png" style="max-width:100%;" alt="" /><p>4. Добавьте следующие системные переменные, введя имена и значения переменных в выделенное текстовое поле, нажав кнопку Создать для каждой переменной:</p><ul>	<li>PUMP_FIELDS определяет, какие поля вы хотите использовать в Pump pillbox, и включает в себя такие параметры, как уровень заряда батареи и резервуара;</li>	<li>ENABLE явно указывает, какие функции следует включить для пользователя;</li>	<li>Параметр API_SECRET должен быть настроен таким образом, чтобы устройство-загрузчик могло использовать REST API для добавления данных в Nightscout (прямая запись в MongoDB не поддерживается);</li>	<li>MONGO - это строка подключения к базе данных, которая требуется Nightscout для получения ваших данных;</li>	<li>ПОРТ - это порт, который система будет прослушивать, обычно 80 для HTTP, если вы собираетесь использовать обратный прокси-сервер перед Nightscout, или 443, если нет;</li>	<li>INSECURE_USE_HTTP позволяет узлу использовать HTTP и не требовать HTTPS, что необходимо только в том случае, если вы планируете использовать обратный прокси-сервер перед Nightscout (подробности смотрите в разделах IIS).</li></ul>PUMP_FIELDS = reservoir battery statusENABLE = careportal iob cob openaps pump bwg rawbg basalAPI_SECRET = YOUR_API_SECRET_HEREMONGO = mongodb://username:password@localhost:27017/NightscoutPORT = 443INSECURE_USE_HTTP = true<p>Откройте приглашение командной строки NodeJS от имени администратора и перейдите в папку Nightscout, затем запустите процесс установки Node Package Manager (NPM):</p>npm install --msvs_version=2015<p>Как только процесс установки будет завершен, запустите сервер:</p>node server.js<p>При первом запуске Nightscout потребуется немного больше времени, чтобы подготовить базу данных, поскольку ее необходимо инициализировать. Когда вы увидите строку clear_alarm для всех клиентов, попробуйте подключиться к ней с помощью Internet Explorer, перейдя по ссылке http://localhost/. Если вы видите сайт Nightscout и перенаправлены в Редактор профилей, значит, настройка завершена. Закройте сервер Nightscout, нажав Ctrl+C, чтобы начать настройку его автоматического запуска при загрузке системы.</p><h4>Запуск Nightscout при загрузке</h4><p>Для запуска Nightscout при загрузке системы необходимо использовать планировщик заданий.</p><p>1. Откройте планировщик задач и нажмите кнопку Создать базовую задачу:</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/32.png" style="max-width:100%;" alt="" /><p>2. Назовите новую задачу Nightscout Server и нажмите кнопку Далее</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/33.png" style="max-width:100%;" alt="" /><p>3. Выберите "При запуске компьютера" в качестве триггера и нажмите "Далее"</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/34.png" style="max-width:100%;" alt="" /><p>4. Выберите "Запустить программу" в качестве действия для выполнения и нажмите "Далее".</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/35.png" style="max-width:100%;" alt="" /><p>5. Настройте задачу так, чтобы она запускалась в Node и в папке Nightscout, затем нажмите "Далее":</p><ul>	<li>Программа/скрипт: C:\Program Files\nodejs\node.exe</li>	<li>Аргументы: server.js</li>	<li>Начать с: C:\Nightscout\</li></ul><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/36.png" style="max-width:100%;" alt="" /><p>6. Установите флажок "Открывать диалоговое окно свойств для этой задачи, когда я нажимаю кнопку Готово" и нажмите кнопку Готово</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/37.png" style="max-width:100%;" alt="" /><p>Если вы получите предупреждение о названии программы и аргументах, нажмите кнопку "Нет"</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/38.png" style="max-width:100%;" alt="" /><p>7. На вкладке Общие выберите "Запускать независимо от того, вошел пользователь в систему или нет".</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/39.png" style="max-width:100%;" alt="" /><p>8. На вкладке Триггер дважды щелкните по триггеру в списке и добавьте задержку, установив флажок "Отложить выполнение задачи" на 2 минуты, затем нажмите "ОК"</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/40.png" style="max-width:100%;" alt="" /><p>9. На вкладке "Условия" в разделе "Питание" снимите флажок "Запускать задачу, только если компьютер подключен к сети тока".</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/41.png" style="max-width:100%;" alt="" /><p>10. На вкладке "Настройки" проверьте все следующие параметры:</p><ul>	<li>Запустите задачу как можно скорее после пропущенного запланированного запуска</li>	<li>Если задача не выполняется, перезапускайте ее каждый раз (по умолчанию - 1 минута).</li></ul><p><b>Важно</b>: Снимите флажок "Останавливать задачу, если она выполняется дольше", иначе ваша служба Nightscout будет останавливаться через три дня после каждой перезагрузки.</p><p>Если вам будет предложено ввести пароль администратора, сделайте это и нажмите кнопку ОК. Закройте планировщик заданий и перезагрузите сервер. Подождите не менее 2 минут с момента, когда вы сможете нажать Ctrl+Alt+Del для входа в систему, а затем попытайтесь подключиться к сервису.</p><h3>Обратный прокси-сервер с IIS</h3><p>Обычно для обеспечения доступа трафика из Интернета к сервису достаточно перенаправить порт 80 с вашего домашнего маршрутизатора на сервер Nightscout. В моем случае у меня уже есть веб-сервер IIS, доступный через Интернет, поэтому мне нужно было настроить обратный прокси-сервер. Создав новый веб-сайт на существующем сервере IIS и настроив перезапись URL-адреса для прокси-трафика на сервер Nightscout для определенного доменного имени, вы можете запустить более одного веб-сервера, доступного через один и тот же внешний порт. Все эти действия выполняются на существующем основном веб-сервере и не выполняются в системе Nightscout. Вам нужно будет загрузить и установить приложение Microsoft для <a href="https://www.iis.net/downloads/microsoft/application-request-routing" target="_blank">маршрутизации запросов</a> (ARR).</p><h4>Создайте прокси-сайт</h4><p>Настройка сайта, который будет передавать трафик через прокси, выполняется быстро:</p><p>1. Откройте IIS, щелкните правой кнопкой мыши элемент "Сайты" и выберите "Добавить веб-сайт...".</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/42.png" style="max-width:100%;" alt="" /><p>2. Назовите сайт Nightscout Proxy и выберите физический путь к сайту. Этот путь останется пустым. Хотя это и не показано ниже, имя хоста должно быть полным доменным именем, к которому вы ожидаете подключиться через Интернет (например, nightscout.domainname.com).:</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/43.png" style="max-width:100%;" alt="" /><p>Нажмите кнопку ОК и убедитесь, что веб-сайт успешно запущен.</p><h4>Настройте обратный прокси-сервер для перезаписи URL-адреса</h4><p>Модуль перезаписи URL-адресов будет действовать как обратный прокси-сервер, принимая входящий трафик с внешнего доменного имени (например, nightscout.domainname.com ), переписывая его на внутреннее имя целевого веб-сервера (например, nightscout.internal.local), а затем перенаправляя его на внутренний веб-сервер Nightscout. Когда сервер Nightscout возвращает данные, URL Rewrite обрабатывает трафик в обратном порядке, получая ответ от Nightscout, переписывая его в соответствии с внешним доменным именем и отправляя его в интернет-систему, которая отправила первоначальный запрос.</p><p>Поскольку маршрутизация запросов приложений не поддерживает сжатие на целевом хосте, в данном случае Nightscout, нам нужно будет ввести дополнительное правило, которое предписывает Nightscout не сжимать выходные данные. Трафик между веб-браузером и IIS, однако, будет сжиматься.</p><p>1. На сайте "NightscoutProxy" щелкните значок "Переписать URL", а затем нажмите "Просмотреть переменные сервера". Нажмите "Добавить", а затем введите HTTP_ACCEPT_ENCODING. Это позволит нам отключить сжатие между Nightscout и IIS позже. Нажмите кнопку ОК, а затем Вернуться к правилам.</p><p>2. Нажмите кнопку Добавить правило</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/44.png" style="max-width:100%;" alt="" /><p>3. Выберите Обратный прокси-сервер и нажмите кнопку ОК</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/45.png" style="max-width:100%;" alt="" /><p>4. В поле "Входящие правила" введите имя или IP-адрес внутреннего сервера Nightscout и, при необходимости, установите флажок "Разгрузка SSL". Установите флажок Правила исходящих сообщений, введите имя внутреннего сервера Nightscout в текстовое поле "От" (nightscout), затем введите имя внешнего домена в поле "Кому" (nightscout.domainname.com).</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/46.png" style="max-width:100%;" alt="" /><p>На этом этапе для большинства веб-серверов вы попытаетесь получить доступ к серверу Nightscout со смартфона через сотовое соединение для передачи данных, и это сработает. Выполнение этого сейчас приведет к ошибке, поскольку URLRewrite ненавидит сжатие, и его необходимо отключить на внешнем сервере IIS и в Nightscout.</p><h4>Перезапись и сжатие URL-адресов</h4><p>Сжатие данных между IIS и Nightscout необходимо отключить, поскольку URLRewrite его не поддерживает. Мы сделаем это, переписав заголовок HTTP_ACCEPT_ENCODING между IIS и Nightscout. Заголовок Accept-Encoding: request, передаваемый в Nightscout, будет иметь значение неподдерживаемого имени сжатия (x), что приведет к тому, что Node будет передавать свои данные вообще без какого-либо сжатия.</p><p>1. Перейдите на сайт "NightscoutProxy" и дважды щелкните значок перезаписи URL-адреса</p><p>2. Дважды щелкните ReverseProxyInboundRule1 в Правилах ввода</p><p>3. В разделе "Серверные переменные" нажмите кнопку "Добавить". Введите HTTP_ACCEPT_ENCODING в поле "Имя серверной переменной" и "x" в поле "Значение". Нажмите "ОК", чтобы добавить правило, а затем нажмите "Применить".</p><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/47.png" style="max-width:100%;" alt="" /><img src="https://nightscout.su/uploads/posts/ustanovka-nightscout-na-windows-server/48.png" style="max-width:100%;" alt="" /><p>Как только это изменение будет внесено, вы сможете просматривать свой экземпляр Nightscout через обратный прокси-сервер IIS.</p><h3>Вывод</h3><p>Nightscout доступен как CGM в облаке, и этот сценарий очень просто настроить в Azure или Hiroku - отличный вариант, если у вас есть доступ только к ресурсам облачных вычислений. Люди, имеющие доступ к локальным серверам и предпочитающие осуществлять больший контроль над своими данными, могут использовать Windows Server для хранения своей информации внутри компании.</p>
   ]]></content:encoded>
  </item>
  <item>
   <title>Перенос Nightscout на свой сервер VPS/VDS (Ubuntu 20.04)</title>
   <link>https://nightscout.su/articles/perenos-nightscout-na-svoj-server-vpsvds-ubuntu-2004</link>
   <guid isPermaLink="true">https://nightscout.su/articles/perenos-nightscout-na-svoj-server-vpsvds-ubuntu-2004</guid>
   <pubDate>Fri, 22 Nov 2024 00:00:00 +0300</pubDate>
   <author>NightScout.su</author>
   <category><![CDATA[Статьи]]></category>
   <comments>https://nightscout.su/articles/perenos-nightscout-na-svoj-server-vpsvds-ubuntu-2004#comments</comments>
   <enclosure url="https://nightscout.su/files/blog/1691406310_nightscout-ubuntu.png" type="image/jpeg" />
   <description><![CDATA[<p>В данной статье рассказывается как пошагово настроить своими руками свой сервер NightScout на VPS <b>Ubuntu</b> для мониторинга сахаров у диабетиков!</p>]]></description>
   <content:encoded><![CDATA[
     <figure>
      <img src="https://nightscout.su/files/blog/1691406310_nightscout-ubuntu.png" />
      <figcaption>Перенос Nightscout на свой сервер VPS/VDS (Ubuntu 20.04)</figcaption>
     </figure>
    <h3>Настройка NightScout на Ubuntu 20.04</h3><h4>Подготовка сервера к установке NightScout</h4><p>Запускаем обновление Ubuntu</p>apt update -y<p>Устанавливаем найденные обновления</p>apt dist-upgrade -y<p>Создаем Виртуальный файл подкачки</p>sudo fallocate -l 2G /swapfilesudo chmod 600 /swapfilesudo mkswap /swapfilesudo swapon /swapfileswapon --show<p>Устанавливаем дополнительные пакеты которые нам пригодятся при сборке след программ</p>sudo apt install build-essential checkinstall libssl-dev<p>Устанавливаем пакет Node.JS</p>curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash - &amp;&amp;\sudo apt-get install -y nodejs<h4>Установка и настройка базы данных MongoDB</h4>sudo apt-get install gnupgwget -qO - https://www.mongodb.org/static/pgp/server-6.0.asc | sudo apt-key add -echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/6.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-6.0.listsudo apt-get updatesudo apt-get install -y mongodb-orgsystemctl start mongod.servicesystemctl status mongod.service<p>Добавляем в MongoDB пароль для админа (<b>пароль делаем свой не копируйте пароль в целях безопасности!!!</b>)</p>mongoshuse admindb.createUser({user:"admin",pwd:"GSg9d8ehgewoH",roles:[{role:'userAdminAnyDatabase',db:'admin'}, "readWriteAnyDatabase"]})exit<p>Ставим защиту на MongoDB, открываем текстовый файл</p>sudo nano /etc/mongod.conf<p>Ищем параметр security , рядом с которым удаляем решетку и добавляем параметр authorization, должно получиться так:</p>security:   authorization: enabled<p>Перезапуском базу данных</p>sudo systemctl restart mongod<p>Логинимся в Базу данных и создаем новую базу данных для нашего NightScout (<b>пароль делаем свой не копируйте пароль в целях безопасности!!!</b>)</p>use nightscoutdb.createUser({user:"nightscout",pwd:"Skdgud87gIKSTYgehe",roles:[{role:'readWrite',db:'nightscout'}]})db.createCollection("entries")exit<h4>Установка и настройка базы данных NightScout</h4>git clone https://github.com/nightscout/cgm-remote-monitor.gitcd cgm-remote-monitorexport NODE_OPTIONS=--max-old-space-size=8192npm install<p>Создаем конфигурационный файл my.env</p>nano my.env<p>Вставляем код (<b>API_SECRET делаем свой не копируйте пароль в целях безопасности!!!</b>)</p>MONGODB_URI=mongodb://nightscout:Skdgud87gIKSTYgehe@127.0.0.1:27017/nightscoutBASE_URL=http://127.0.0.1:1337API_SECRET=12345678!!!nibblMONGODB_COLLECTION=entriesDISPLAY_UNITS=mmolENABLE=careportal%20basal%20dbsize%20rawbg%20iob%20maker%20cob%20bwp%20cage%20iage%20sage%20boluscalc%20pushover%20treatmentnotify%20loop%20pump%20profile%20food%20openaps%20bage%20alexa%20override%20speech%20corsTHEME=colorsTIME_FORMAT=24<p><b>MONGODB_URI</b> – путь к нашей базе данных (<b>обязательно сделайте свой уникальный пароль</b>)</p><p><b>API_SECRET</b> – секретный пароль к нашей базе данных (<b>обязательно сделайте свой уникальный пароль</b>)</p><p>Создаем файл запуска скрипта <b>start.sh</b></p>(eval $(cat my.env | sed 's/^/export /') &amp;&amp; PORT=1337 node server.js)<p>Делаем его исполняемым</p>chmod +x start.sh<p>Данный пункт очень важный. Сейчас мы будем запускать фоновый режим в котором запустим наш скрипт <b>start.sh</b></p>screen<p>Теперь нажимаем Enter и вводим команду</p>./start.sh<p>Теперь надо аккуратно выйти из этого фонового режима, для этого нажимаем комбинацию клавиш "<b>Ctrl + A</b>" и "<b>Ctrl + D</b>"</p><h4>Прикрепление доменного имено к серверу NightScout</h4><p>Устанавливаем WEB сервер nginx через который мы и будем следить за нашими показателями.</p>sudo apt install nginx -y<p>Создаем конфигурационный файл</p>sudo nano /etc/nginx/sites-available/nightscout<p>Копируем настройки в наш конфигурационный файл</p>server {    listen 80;    server_name vashdomen.ru;    location / {        proxy_pass http://127.0.0.1:1337;        proxy_http_version 1.1;        proxy_set_header Upgrade $http_upgrade;        proxy_set_header Connection 'upgrade';        proxy_set_header Host $host;        proxy_cache_bypass $http_upgrade;        proxy_set_header X-Forwarded-Proto https;    }}<p><b>vashdomen.ru</b> – тут вписываем название вашего домена</p><p>Активируем нашу конфигурацию</p>sudo ln -s /etc/nginx/sites-available/nightscout /etc/nginx/sites-enabled<p>Проверяем на ошибки наш конфигурационный файл</p>sudo nginx -t<p>Перезапускаем сервер nginx для того чтобы заработал наш конфигурационный файл</p>sudo systemctl restart nginx<p>Заходим на наш сайт. Все!</p>
   ]]></content:encoded>
  </item>
  <item>
   <title>Перенос Nightscout на свой сервер VPS/VDS (Debian 9)</title>
   <link>https://nightscout.su/articles/perenos-nightscout-na-svoj-server-vpsvds-debian-9</link>
   <guid isPermaLink="true">https://nightscout.su/articles/perenos-nightscout-na-svoj-server-vpsvds-debian-9</guid>
   <pubDate>Fri, 22 Nov 2024 00:00:00 +0300</pubDate>
   <author>NightScout.su</author>
   <category><![CDATA[Статьи]]></category>
   <comments>https://nightscout.su/articles/perenos-nightscout-na-svoj-server-vpsvds-debian-9#comments</comments>
   <enclosure url="https://nightscout.su/files/blog/1691402969_nightscout-debian.png" type="image/jpeg" />
   <description><![CDATA[<p>В данной статье рассказывается как пошагово настроить своими руками свой сервер NightScout на VPS <b>Debian</b> для мониторинга сахаров у диабетиков!</p>]]></description>
   <content:encoded><![CDATA[
     <figure>
      <img src="https://nightscout.su/files/blog/1691402969_nightscout-debian.png" />
      <figcaption>Перенос Nightscout на свой сервер VPS/VDS (Debian 9)</figcaption>
     </figure>
    <h3>Установка NightScout на Debian 9 'Stretch'</h3>    <p>Данное руководство не претендует на полноту и использование best practices, предварительно необходимо установить Debian 9 <b>(минимально: 1 ядро, 1Gb оперативной памяти, 10Gb HDD, лучше от 2Gb RAM)</b>, подключить его к интернету, обновить, пробросить HTTP, HTTPS, SSH при необходимости. Перенаправить А — запись доменна или поддомена на IP адрес сервера.</p>    <p>Все манипуляции проводились под пользователем <b>root</b>.</p>    <p>Использование данной иструкции подразумевает наличие навыков системного администрирования nix систем и владение необходимыми сетевыми технологиями.</p><p>Переходим для удобства в PuTTy (<a href="https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html" target="_blank">официальный сайт с загрузкой</a>), вводим в поле "<b>Host Name</b>" IP адрес сервера и нажимаем "<b>Open</b>", далее вводим имя пользователя и пароль.</p><h4>0. Установка дополнительных пакетов</h4>apt-get install sudoapt-get -y install curlapt-get -y install mc #не обязательно<h4>1. Разрешаем ssh для root если необходимо</h4>cd /etc/sshnano sshd_config<p>Добавляем строку: PermitRootLogin yes</p><p>Сохраняем: нажимаем "<b>Ctrl+x</b>", далее "<b>y</b>", далее "<b>Enter</b>"</p>systemctl restart ssh<h4>2. Установка Mongo</h4><p>Cмотрим актуальный релиз mongo <a href="https://www.mongodb.com/download-center/community" target="_blank">https://www.mongodb.com/download-center/community</a> и при наличии более свежей версии меняем значения ниже</p>curl https://www.mongodb.org/static/pgp/server-4.2.asc | sudo apt-key add -nano /etc/apt/sources.list.d/mongodb-org-4.2.list<p>Добавляем строку</p>deb http://repo.mongodb.org/apt/debian stretch/mongodb-org/4.2 main<p>Сохраняем: нажимаем "<b>Ctrl+x</b>", далее "<b>y</b>", далее "<b>Enter</b>"</p>apt-get updateapt-get -y install mongodb-orgsystemctl enable mongodsystemctl start mongod<p>Создаем пользователя БД — имя и пароль свои</p>mongo&gt; use Nightscout&gt; db.createUser({user: "username", pwd: "password", roles:["readWrite"]})&gt; quit()<h4>3. Импорт данных из Heroku или Azure</h4><p>Экспорт из существующей БД на Mongo. Адрес, пользователь, пароль и порт берем из переменных среды на существующем heroku.com или azure.</p><p><b>mongoexport запускается из командной строки ОС</b></p>mongodump -h _some_adress_from_env.mlab.com --port _port_from_env_ -d _DB_name_from_env_  --username _user_from_env_ --password _password_from_env_mongorestore -d Nightscout dump/_DB_name_from_env_<h4>4. Установка Nightscout</h4>apt-get -y install gitapt-get -y install curl software-properties-commoncurl -sL https://deb.nodesource.com/setup_10.x | sudo bash -apt-get install -y nodejsapt-get install -y gccapt-get install -y build-essential<p>Переходим в папку установки — может быть произвольной. В данном варианте /opt</p>cd /opt mkdir nightscoutcd nightscoutgit clone https://github.com/nightscout/cgm-remote-monitor.gitcd cgm-remote-monitornpm install --unsafe-perm<h4>5. Переменные среды</h4><p>Можно прописать в глобальных системных переменных nano /etc/environment либо создаем файлик nano start.sh</p>#!/bin/bashexport DISPLAY_UNITS="mg/dl"export MONGO_CONNECTION="mongodb://username:password@localhost:27017/ИмяСозданнойБД" //данные из установки Mongoexport PORT=1337export API_SECRET="Api_Secret_min_12_symbols" // задаем свой пароль к Nightscoutexport PUMP_FIELDS="reservoir battery status"export DEVICESTATUS_ADVANCED=trueexport ENABLE="careportal basal cage sage boluscalc rawbg iob bwp bage mmconnect bridge openaps pump iob maker"export TIME_FORMAT=24export BASE_URL="YOURS_INTERNET_URL.RU"export INSECURE_USE_HTTP=trueexport ALARM_HIGH=onexport ALARM_LOW=onexport ALARM_TIMEAGO_URGENT=onexport ALARM_TIMEAGO_URGENT_MINS=30export ALARM_TIMEAGO_WARN=onexport ALARM_TIMEAGO_WARN_MINS=15export ALARM_TYPES=simpleexport ALARM_URGENT_HIGH=onexport ALARM_URGENT_LOW=onexport AUTH_DEFAULT_ROLES=deniedexport BG_HIGH=180export BG_LOW=72export BG_TARGET_BOTTOM=90export BG_TARGET_TOP=162export BRIDGE_MAX_COUNT=1export BRIDGE_PASSWORD=export BRIDGE_SERVER=EUexport BRIDGE_USER_NAME=export CUSTOM_TITLE=MyTitleexport DISABLE=export MONGO_COLLECTION=entriesexport NIGHT_MODE=onexport OPENAPS_ENABLE_ALERTS=trueexport OPENAPS_FIELDS='status-symbol status-label iob meal-assist rssi'export OPENAPS_RETRO_FIELDS='status-symbol status-label iob meal-assist rssi'export OPENAPS_URGENT=60export OPENAPS_WARN=20#export PAPERTRAIL_API_TOKEN=some_tokenexport PUMP_ENABLE_ALERTS=trueexport PUMP_FIELDS='battery reservoir clock status'export PUMP_RETRO_FIELDS='battery reservoir clock status'export PUMP_URGENT_BATT_V=1.3export PUMP_URGENT_CLOCK=30export PUMP_URGENT_RES=10export PUSHOVER=export SHOW_FORECAST=openapsexport SHOW_PLUGINS='openaps pump iob sage cage careportal'export SHOW_RAWBG=noiseexport THEME=colorsnode server.js     # start server<p>Сохраняем: нажимаем "<b>Ctrl+x</b>", далее "<b>y</b>", далее "<b>Enter</b>"</p><p>Запускаем Nightscout</p>chmod +x start.sh./start.sh<p>После запуска ./start.sh через несколько минут в цикле должно появится</p>    <p>#reloading sandbox data</p>    <p>#all buckets are empty</p>    <p>#For the Basal plugin to function you need a treatment profile</p>    <p>#OpenAPS hasn’t reported a loop yet</p>    <p>#WS: running websocket.update</p>    <p>#delta calculation indicates no new data is present</p>    <p>#tick 2019-11-28T10:28:28.794Z</p>    <p>#Load Complete:</p><p>После чего можно пробовать зайти на http://ip_of_debian:1337 — должен открыться Ваш сайт NS и попросить ввести api_secert</p><h4>6. Настраиваем автозапуск</h4>nano /etc/systemd/system/nightscout.service<p>Вставляем строки</p>[Unit]Description=Nightscout Service      After=network.target[Service]Type=simpleWorkingDirectory=/opt/nightscout/cgm-remote-monitorExecStart=/opt/nightscout/cgm-remote-monitor/start.sh[Install]WantedBy=multi-user.target<p>Сохраняем: нажимаем "<b>Ctrl+x</b>", далее "<b>y</b>", далее "<b>Enter</b>"</p><p>Разрешаем автозапуск</p>systemctl daemon-reloadsystemctl enable nightscout.servicesystemctl start nightscout.service<p>Проверяем запущен ли сервис:</p>systemctl status nightscout.service    <p><b>ВНИМАНИЕ!</b> Дальнейшие шаги направлены только на прикрепление доменного имени к вашему серверу, НО это не обязательно.        <br>Ваш сервер Nightscout уже настроен и работает, а так же доступен по адресу: http://ip_of_debian:1337        <br>Этот адрес вы уже можете вбивать в программы для контроля сахара и всё будет работать. Если же вам хочется красивый и уникальный адрес, то выполняйте шаги далее.</p><h4>7. Установка и настройка обратного прокси</h4>apt-get install nginxsystemctl enable nginx<p>Конфигурируем ngnix</p><p>nano /etc/nginx/sites-available/default</p><p>Добавляем строки</p>server {	listen 80;	server_name YOURS_INTERNET_URL.RU;	root /usr/share/nginx/html;	location ~ /.well-known {		allow all;	}} server {	listen 443 ssl;	server_name YOURS_INTERNET_URL.RU;	root /usr/share/nginx/html;	# ssl_certificate     /etc/letsencrypt/live/YOURS_INTERNET_URL.RU/fullchain.pem;	# ssl_certificate_key /etc/letsencrypt/live/YOURS_INTERNET_URL.RU/privkey.pem;	ssl_protocols TLSv1 TLSv1.1 TLSv1.2;	ssl_prefer_server_ciphers on;	ssl_session_timeout 1d;	ssl_session_cache shared:SSL:50m;	ssl_stapling on;	ssl_stapling_verify on;	add_header Strict-Transport-Security max-age=15768000;	resolver 8.8.8.8 8.8.4.4 valid=300s;	location ~ /.well-known {		allow all;	}	location / {		proxy_pass http://127.0.0.1:1337;		proxy_http_version 1.1;		proxy_set_header Upgrade $http_upgrade;		proxy_set_header Connection 'upgrade';		proxy_set_header Host $host;		proxy_cache_bypass $http_upgrade;	}}<p>Сохраняем: нажимаем "<b>Ctrl+x</b>", далее "<b>y</b>", далее "<b>Enter</b>"</p><h4>8. Получение сертификата SSL</h4><p>Не нужно тем, кто размещает Nightscout на VPS хостера и есть возможность получить сертификат через административную панель!</p>sudo apt-get install certbotcertbot certonly --webroot --agree-tos --email youmail@mail.com -w /usr/share/nginx/html/ -d YOURS_INTERNET_URL.RU openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048<p>В файл конфигурации ngnix:</p><p>nano /etc/nginx/sites-available/default</p><p>В секцию server добавляем строки</p>ssl_certificate     /etc/letsencrypt/live/YOURS_INTERNET_URL.RU/fullchain.pem;ssl_certificate_key /etc/letsencrypt/live/YOURS_INTERNET_URL.RU/privkey.pem;<p>Перезапуск nginx:</p>systemctl reload nginxcheck startup nginx #проверка запуска ngnixsystemctl status nginx<h4>NightScout доступен по адресу https://YOURS_INTERNET_URL.RU</h4><p>Всё готово. Дополнительные (необязательные) настройки, а также инструкция по обновлению Nightscout — ниже.</p><h4>Возможные ошибки и их решение</h4>    <p><b>[BABEL] Note: The code generator has deoptimised the styling of "..." as it exceeds the max of 500KB.</b></p><p>Данная ошибка может возникнуть если у вас на сервере &lt; 2Gb оперативной памяти.</p><p><b>Решение:</b></p>cd /opt/nightscout/cgm-remote-monitormkdir -p tmp/publiccd /opt/nightscout/cgm-remote-monitor/tmp/publicwget https://reuleaux.su/uploads/files/2023-08/public.zipsudo apt install unzipunzip public.ziprm /opt/nightscout/cgm-remote-monitor/tmp/public/public.zip<p>Тем самым мы сами скачивем библиотеки, необходимые для работы сервиса Nightscout, в обход их генерации, в процессе которой и возникают ошибки.</p><h4>Установка средств интеграции с гипервизором (не обязательно)</h4><h5>Hyper-V средства интеграции</h5>nano /etc/initramfs-tools/modules<p>Добавляем строки</p>hv_vmbushv_storvschv_blkvschv_netvsc<p>Сохраняем: нажимаем "<b>Ctrl+x</b>", далее "<b>y</b>", далее "<b>Enter</b>"</p>sudo apt-get -y install hyperv-daemonsupdate-initramfs -ureboot<h5>Vmware средства интеграции</h5>apt-get install -y open-vm-tools open-vm-tools-desktopvmware-user-suid-wrapperreboot<h4>Перенаправление домена/поддомена на ip адрес сервера</h4><p>Чтобы сервер был доступен по доменному имени, в панели управления хостинга в редакторе DNS зон необходимо создать запись. Добавьте новую запись со следующими параметрами:</p><ul>    <li>Имя: YOURS_INTERNET_URL.RU. <b>точка в конце обязательна!</b></li>    <li>Тип: A значение (IP/host.)</li>    <li>IP-адрес сервера: server ip</li></ul><h4>Обновление версии Nightscout</h4>git reset --hardgit checkout master &amp;&amp; git pullsudo npm install --unsafe-perm
   ]]></content:encoded>
  </item>
  <item>
   <title>Перенос Nightscout на свой сервер VPS/VDS (CentOS 8)</title>
   <link>https://nightscout.su/articles/perenos-nightscout-na-svoj-server-vpsvds-centos-8</link>
   <guid isPermaLink="true">https://nightscout.su/articles/perenos-nightscout-na-svoj-server-vpsvds-centos-8</guid>
   <pubDate>Fri, 22 Nov 2024 00:00:00 +0300</pubDate>
   <author>NightScout.su</author>
   <category><![CDATA[Статьи]]></category>
   <comments>https://nightscout.su/articles/perenos-nightscout-na-svoj-server-vpsvds-centos-8#comments</comments>
   <enclosure url="https://nightscout.su/files/blog/1691405077_nightscout-centos.png" type="image/jpeg" />
   <description><![CDATA[<p>В данной статье рассказывается как пошагово настроить своими руками свой сервер NightScout на VPS <b>CentOS</b> для мониторинга сахаров у диабетиков!</p>]]></description>
   <content:encoded><![CDATA[
     <figure>
      <img src="https://nightscout.su/files/blog/1691405077_nightscout-centos.png" />
      <figcaption>Перенос Nightscout на свой сервер VPS/VDS (CentOS 8)</figcaption>
     </figure>
    <h3>Установка NightScout на CentOS 8</h3><p>Установим Nightscout на свой сервер под управлением CentOS 8. Предполагается, что вы знакомы с командной строкой и работой с Linux.</p><p>Имеем установленный сервер под управлением CentOS 8, доступ по ssh. Для простоты SELinux отключен. Вход в консоль осуществлен под пользователем root или пользователя с правами sudo. Сервер должен иметь "белый" статический IP или находиться за NAT-ом, тоже со статическим IP. Так же, должно быть зарегистрировано имя с указанием в DNS на наш сервер. Для примера, буду использовать имя "night.domain.ru". Сделаем необходимую подготовку, установим программы:</p>dnf install git nano mc -ydnf groupinstall 'Development Tools' -y<h4>Установим MongoDB</h4><p>Официальная документация по установке доступна <a href="https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-hat/" target="_blank">тут</a></p><p>Добавим репозиторий</p>echo '[mongodb-org-4.4]name=MongoDB Repositorybaseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/4.4/x86_64/gpgcheck=1enabled=1gpgkey=https://www.mongodb.org/static/pgp/server-4.4.asc' &gt; /etc/yum.repos.d/mongodb-org-4.4.repo<p>Устанавливаем</p>dnf install mongodb-org -y<p>Делаем автозапуск службы, запускаем MongoDB и проверяем работу</p>systemctl enable mongod.servicesystemctl start mongod.servicesystemctl status mongod.service<p>Должно быть примерно так:</p>● mongod.service - MongoDB Database Server   Loaded: loaded (/usr/lib/systemd/system/mongod.service; enabled; vendor preset: disabled)   Active: active (running) since Sun 2020-09-06 12:28:55 +04; 19min ago     Docs: https://docs.mongodb.org/manual Main PID: 9384 (mongod)   Memory: 74.5M   CGroup: /system.slice/mongod.service           └─9384 /usr/bin/mongod -f /etc/mongod.conf<p>Добавим пользователя admin и включаем аутентификацию. Официальная документация. Для этого заходим в консоль mongo:</p>mongo<p>и вставляем следующий код (замените ADMIN_PASSWORD на свой пароль):</p>&gt; use admin&gt; db.createUser({user: "admin",pwd: "ADMIN_PASSWORD",roles: [{ role: "userAdminAnyDatabase", db: "admin" }, { role: "readWriteAnyDatabase", db: "admin" }, { role: "root", db: "admin" }, "readWriteAnyDatabase" ] })&gt; quit()<p>В ответ вы должны получить такое: Successfully added user. Включаем аутентификацию, для этого редактируем файл /etc/mongod.conf, находим в нем строку #security: и приводим к такому виду:</p>security:  authorization: "enabled"<p>и перезапускаем MongoDB</p>systemctl restart mongod.service<p>Создаем базу (nightscout), добавляем пользователя (userdb) и пароль (passdb - заменить на свой) к ней. Заходим в консоль монго</p>mongo -u admin -p --authenticationDatabase adminвводим пароль admin<p>Выполняем</p>&gt; use nightscout&gt; db.createUser({user: "userdb", pwd: "passdb", roles:["readWrite"]})&gt; db.createCollection("entries")&gt; quit()<p>Проверяем</p>&gt; use nightscout&gt; show dbs<p>Должны увидеть</p>admin       0.000GBconfig      0.000GBlocal       0.000GBnightscout  0.000GB<p>База готова. Выходим из консоли MongoDB <b>Ctrl+C</b>. Экспортирование базы из Heroku будет написано ниже.</p><h4>Установим NodeJS</h4><p>Ставить будем из репозитория <b>AppStream</b>, посмотрим существующие версии</p>dnf module list nodejs<p>Должно быть примерно так:</p>CentOS-8 - AppStreamName           Stream         Profiles                                      Summary                  nodejs         10 [d]         common [d], development, minimal, s2i         jаvascript runtime       nodejs         12             common [d], development, minimal, s2i         jаvascript runtime       <p>Доступны два потока, 10 и 12. <b>[d]</b> указывает, что версия 10 — это поток по умолчанию. Изменим его на 12.</p>dnf module enable nodejs:12 -y<p>Установим NodeJS</p>dnf install nodejs -y<p>Вместе с NodeJS устанавливается npm - пакетный менеджер, Проверим версии</p>node --version &amp;&amp; npm --version<p>У меня такие: v12.18.3, 6.14.6, у вас могут отличаться</p><h4>Устанавливаем Nightscout</h4><p>Nightscout не может работать от root, по этому создадим пользователя и сделаем запуск от него. Создаем пользователя nightscout, определяя его домашний каталог /opt/nightscout</p>useradd -d /opt/nightscout -m -c "User for nightscout" nightscout<p>Заходим под новым пользователем и устанавливаем Nightscout</p>su - nightscoutgit clone https://github.com/nightscout/cgm-remote-monitor.gitcd cgm-remote-monitornpm install<p>Создаем исполняемый файл /opt/nightscout/cgm-remote-monitor/start.sh следующего содержания. Обратите внимание на: MONGO_CONNECTION - параметры для подключения к MongoDB. API_SECRET - секретный ключ для доступа к сайту. Остальные параметры можно посмотреть <a href="https://github.com/nightscout/cgm-remote-monitor#environment" target="_blank">тут</a></p>#!/bin/bash# environment variablesexport MONGO_CONNECTION="mongodb://userdb:passdb@localhost:27017/nightscout"export DISPLAY_UNITS="mmol"export BASE_URL="http://night.domain.ru"export PORT=1337export DEVICESTATUS_ADVANCED=trueexport INSECURE_USE_HTTP=trueexport mongo_collection="entries"export API_SECRET="1234567890XY"export ENABLE="careportal basal rawbg cob iob cage bwp upbat sage pump"export TIME_FORMAT=24export THEME=colorsexport LANGUAGE=ruexport SCALE_Y=linearexport HOSTNAME=0.0.0.0# start servernode /opt/nightscout/cgm-remote-monitor/server.js<p>Сделаем наш файл исполняемым</p>chmod +x start.sh<p>Так же, уберем возможность запускать файл setup.sh - он нам не нужен, но находится рядом.</p>chmod -x setup.sh<p>и пробуем запустить.</p>./start.sh<p>В консоль начало приходить примерно такое:</p>Load Complete:reloading sandbox dataall buckets are emptyFor the COB plugin to function you need a treatment profileFor the Basal plugin to function you need a treatment profileWS: running websocket.updateWS: emitted clear_alarm to all clientstick 2020-09-07T18:29:33.800Z<p>Останавливаем <b>Ctrl+C</b></p><p>Дальнейшие работы проводим под пользователем root, нажимаем Ctrl+D и возвращаемся в консоль рута. Делаем службу, чтоб Nightscout запускался автоматически, создаем файл /etc/systemd/system/nightscout.service следующего содержания</p>[Unit]Description=Nightscout ServiceAfter=network.targetAfter=mongod.service[Service]Type=simpleUser=nightscoutGroup=nightscoutWorkingDirectory=/opt/nightscout/cgm-remote-monitorExecStart=/opt/nightscout/cgm-remote-monitor/start.sh[Install]WantedBy=multi-user.target<p>перезагружаем демона и стартуем сервис</p>systemctl daemon-reloadsystemctl enable nightscout.servicesystemctl start nightscout.service<p>Через некоторое время проверяем, что все работает:</p>systemctl status nightscout.service● nightscout.service - Nightscout Service   Loaded: loaded (/etc/systemd/system/nightscout.service; enabled; vendor preset: disabled)   Active: active (running) since Mon 2020-09-07 22:45:25 +04; 18s ago Main PID: 37456 (start.sh)    Tasks: 12 (limit: 12525)   Memory: 61.0M   CGroup: /system.slice/nightscout.service           ├─37456 /bin/bash /opt/nightscout/cgm-remote-monitor/start.sh           └─37458 node /opt/nightscout/cgm-remote-monitor/server.js<p>Проверим, что порт слушается и проверим работу сайта</p>netstat -ltupen | grep 1337tcp        0      0 0.0.0.0:1337            0.0.0.0:*               LISTEN      0          123534     37458/nodecurl http://localhost:1337 | grep ""  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current                                 Dload  Upload   Total   Spent    Left  Speed100 43706  100 43706    0     0  3283k      0 --:--:-- --:--:-- --:--:-- 3556k      &lt;title&gt;Nightscout<p>Если увидели нечто такое - сайт работает.</p><h4>Устанавливаем Nginx</h4><p>Установим сам nginx и certbot (для получения сертификата от <b>Let’s Encrypt</b>)</p>dnf install nginx certbot python3-certbot-nginx -y<p>Откроем файл /etc/nginx/nginx.conf и закомментируем секцию server, т.е. приведем к такому виду</p>#    server {#        listen       80 default_server;#        listen       [::]:80 default_server;#        server_name  _;#        root         /usr/share/nginx/html;##        # Load configuration files for the default server block.#        include /etc/nginx/default.d/*.conf;##        location / {#        }##        error_page 404 /404.html;#            location = /40x.html {#        }##        error_page 500 502 503 504 /50x.html;#            location = /50x.html {#        }#    }<p>Создаем новый каталог и файлы с конфигурацией</p>mkdir /etc/nginx/includes<p>файл /etc/nginx/includes/ssl</p>#ssl_certificate	/etc/pki/tls/certs/fullchain.pem;#ssl_certificate_key	/etc/pki/tls/certs/privkey.pem;ssl_protocols TLSv1.2 TLSv1.3;ssl_session_timeout 1d;ssl_session_cache shared:SSL:50m;ssl_session_tickets off;ssl_ciphers 'ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256';ssl_prefer_server_ciphers on;# HSTS (ngx_http_headers_module is required) (15768000 seconds = 6 months)add_header Strict-Transport-Security "max-age=15768000; includeSubdomains; ";# OCSP Stapling ---# fetch OCSP records from URL in ssl_certificate and cache themssl_stapling on;ssl_stapling_verify on;ssl_trusted_certificate /etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem;resolver 8.8.8.8 valid=300s;resolver_timeout 5s;<p>файл /etc/nginx/includes/proxy_pass_reverse</p>proxy_set_header X-Forwarded-Host $host;proxy_set_header X-Forwarded-Server $host;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;<p>Создадим файл с конфигурацией нашего сайта /etc/nginx/conf.d/night.conf</p>server {    listen  80;    server_name night.domain.ru default_server;    # enforce https    return 301 https://$server_name$request_uri;}server {    listen 443 ssl http2;    server_name night.domain.ru default_server;    access_log /var/log/nginx/night-access.log;    error_log /var/log/nginx/night-error.log;    include /etc/nginx/includes/ssl;    location / {        proxy_pass http://127.0.0.1:1337/;        include /etc/nginx/includes/proxy_pass_reverse;    }}<p>Для получения сертификата, надо изменить настройки nginx, для этого создаем каталог</p>mkdir -p /var/www/letsencryptchown -R nginx:nginx /var/www/letsencrypt<p>Теперь нам нужно сделать так, чтобы любой запрос вида: http://night.domain.ru/.well-known/acme-challenge приводил к физическому размещению /var/www/letsencrypt/.well-known/acme-challenge, для этого создадим файл /etc/nginx/includes/letsencrypt такого содержания</p>location ^~ /.well-known/acme-challenge/ {   default_type "text/plain";   root /var/www/letsencrypt;}location = /.well-known/acme-challenge/ {   return 404;}<p>Теперь внесем изменения в файл /etc/nginx/conf.d/night.conf, добавив в него строку include /etc/nginx/includes/letsencrypt;, должно получится так: (лишние строки я обрезал)</p>server {    listen 443 ssl http2;..........    include /etc/nginx/includes/ssl;    include /etc/nginx/includes/letsencrypt;..........}<p>Теперь можно сделать запрос на выпуск сертификатов. <b>Обращаю внимание</b>, что у вас должна быть правильно настроена запись в DNS, при которой все запросы по имени night.domain.ru должны приходить на ваш сервер. Проверить это можно через команду</p>host night.domain.runight.domain.ru has address 123.45.67.89<p>,где 123.45.67.89 - IP вашего сервера. Так же, необходимо открыть порты 80, 443 на фаерволе. Я использую iptables (не люблю firewalld), по этому добавил правила:</p>-A INPUT -p tcp -m tcp --dport 80 -j ACCEPT-A INPUT -p tcp -m tcp --dport 443 -j ACCEPT<p>Теперь можно сделать запрос на создание сертификата:</p># Запрос без оповещения на e-mailcertbot certonly --nginx -d night.domain.ru --register-unsafely-without-email# ИЛИ такой, с оповещением на my_email@domain.rucertbot certonly --nginx -d night.domain.ru -m my_email@domain.ru<p>В результате, вы должны увидеть такой лог (обрезан):</p>.........IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at:   /etc/letsencrypt/live/night.domain.ru/fullchain.pem   Your key file has been saved at:   /etc/letsencrypt/live/night.domain.ru/privkey.pem.........<p>тут нас интересует пути до сертификата и приватный ключ. Изменим файл /etc/nginx/includes/ssl, в самом начале:</p>ssl_certificate		/etc/letsencrypt/live/night.domain.ru/fullchain.pem;ssl_certificate_key	/etc/letsencrypt/live/night.domain.ru/privkey.pem;<p>теперь настроим службы nginx и запустим его</p>systemctl enable nginx.servicesystemctl start nginx.service<p>Теперь можно зайти на сайт https://night.domain.ru и продолжить настройки самого сайта. Так же, можно проверить на правильную настройку nginx и сертификатов на этом <a href="https://www.ssllabs.com/ssltest" target="_blank">сайте</a>.</p><p>Настроим автообновление сертификата. Для этого выполним команду</p>export EDITOR=mceditcrontab -e<p>и добавим строку в самый конец:</p>0 0,12 * * * python3 -c 'import random; import time; time.sleep(random.random() * 3600)' &amp;&amp; certbot -q renew --renew-hook "systemctl restart nginx.service"<h4>Импортируем данные с Heroku</h4><p>Заходим на <a href="https://dashboard.heroku.com/apps/mytestgsm/settings" target="_blank">сайт</a>, нажимаем кнопку "Reveal Config Vars", находим переменную "MONGODB_URI". В ней содержится вся необходимая информация для создания дампа. В моем случае она такая (данные изменены):</p>mongodb://heroku_slllg:4bo58b2jud67tjqvime2s@ds123963.mlab.com:23963/heroku_slllg<p>выполняем команды</p>cd ~# Дамп с Herokumongodump --host="ds123963.mlab.com:23963" -d heroku_slllg --username="heroku_slllg" --password="4bo58b2jud67tjqvime2s"# Восстановление в нашу базуmongorestore -d nightscout --username="userdb" --password="passdb" dump/heroku_slllg<p>Заходим на сайт и видим наши данные.</p>
   ]]></content:encoded>
  </item>
 </channel>
</rss>
