Хотите поздравить родителей с рождением дочки или сына, украсить детскую комнату красивым постером или поставить коллаж в фоторамку? Создайте плакат со снимками и данными младенца! Это позволит запечатлеть важный момент в жизни каждого человека и начать историю ребенка. Укажите имя, вес, рост и время рождения малыша. Оформить постер можно самостоятельно с помощью программного обеспечения на компьютере. В этой статье мы расскажем, как сделать метрику ребенку в простой программе для составления коллажей, и поделимся идеями по созданию яркого и запоминающегося плаката с данными новорожденного.
Посмотрите видеоурок по созданию постера с метриками малыша в программе ФотоКОЛЛАЖ
Отпраздновать рождение малыша хочет каждый родитель. Отметить это событие можно созданием детского постера, открытки или небольшого изображения для вставки в фоторамку. Скажем пару слов о том, что такое метрика ребенка.
На заметку: Детская метрика – это данные, которые помещают на бирку новорожденного: его имя, дата рождения, вес и рост. Так же метрикой называют декоративный плакат с первым фото малыша и указанием его параметров при рождении.
В композицию можно также включить различные милые иллюстрации, украшения, имена родителей, знак Зодиака и т.д. Постер-метрику можно подарить при выписке из роддома или на годик малыша, повесить на стену в детской комнате или выложить в социальные сети.Разместите на плакате изменения в росте и весе младенца по месяцам
Строгих правил в оформлении метрики новорожденного нет. Проект может быть выполнен в любом размере и стиле. В зависимости от своей целей оформите большое панно-коллаж, постер А4 формата или праздничную открытку.
Картинки и фоны для детской метрики могут быть любыми. В оформлении можно использовать фотографии родителей, новорожденного, красивые праздничные изображения или кадры из мультика. Вы также можете разместить снимок УЗИ, бирку из роддома или слепок рук. Также хорошей идеей будет украсить работу клипартами: поместите на лист стикеры с животными, цветами, машинками, аистом.
Фото УЗИ можно оформить в рамку и украсить стикерами
Имя можно оформить красивым рукописным шрифтом или оставить пустое место на постере и вписать потом от руки, если, например, вы готовите композицию к рождению и данные еще не известны. Помимо стандартных данных о ребенке добавьте знак зодиака, дату крещения, имена родителей, цвет глаз. Подпись для лучшей читаемости удобнее всего разместить на небольшой картинке или на подложке в виде геометрической фигуры. Например, очень распространенный ход – расположить параметр веса на картинке с гирей, время — на часах, дату — на календаре.
Поместите рост рядом с жирафом или линейкой
Фон может состоять из однотонного цвета, градиента, снимка, принта или иллюстрации. Главное – следите, чтобы композиция не была перегруженной. Если используете минимум декора, фон может быть красочным, если же, наоборот, на коллаже много клипарта, надписей и фотографий, подложка должна быть максимально простой. При выборе цветовой гаммы лучше использовать пастельные оттенки: для девочек — теплые, для мальчиков — холодные.
На заметку: Если родились близнецы, можно сделать один проект для двоих. Плакат для новорожденного тогда будет состоять из двух блоков. Разделение может происходить за счет большой надписи с датой или поздравлением. Для троих детей необходимо выбрать формат А3 или А2.
Визуально разбить постер на части можно с помощью разных оттенков фона или надписей
Чтобы создать красивый постер, необязательно нанимать профессионального дизайнера или использовать сложную программу, вроде Фотошопа. Также вы можете воспользоваться бесплатными онлайн-редакторами, но они предлагают минимум функций по оформлению и не позволяют скачать результат в высоком качестве.
Оптимальным вариантом будет приложение для обработки изображений и соединения снимков ФотоКОЛЛАЖ. Оно предлагает удобный интерфейс на русском языке и все необходимые функции для оформления плаката.
Редактор постеров позволит:
Вы можете скачать программу и бесплатно использовать шаблоны метрики для новорожденных. Загрузить установочный файл можно, кликнув на кнопку ниже.
Создавайте свои лучшие коллажи из фотографий легко! СкачатьВы можете скачать программу и бесплатно использовать шаблоны метрики для новорожденных. Загрузить установочный файл можно, кликнув на кнопку ниже.
Запустите приложение и создайте новый проект. Выберите «Шаблоны коллажей».
Далее вы сможете выбрать заготовку
Макеты разбиты на категории: простые, детские, абстрактные, открытки.
Любую заготовку можно скорректировать под себя
Далее необходимо установить размеры холста. Есть несколько вариантов:
Также выберите ориентацию листа
В готовом шаблоне уже есть место под фото для заполнения. Вам необходимо просто дважды кликнуть по заданному участку и выбрать снимок с вашего компьютера.
Можете также перетащить фото на шаблон метрики из панели слева
Вы можете переместить и настроить величину каждого элемента. Для этого просто выделите деталь и перетащите ее. Для изменения величины потяните за углы рамки.
Зажмите CTRL для сохранения исходного соотношения сторон
Если вы выбрали макет с текстовым слоем, у вас есть возможность изменить его содержание. Дважды кликните на слой и в новом окне введите надпись. Вы можете настроить ее размер, шрифт, начертание, заливку и применить эффекты.
Также есть возможность выбрать стиль текста
Укажите расширение: JPEG, PNG, BMP, TIFF и другие
Вы также можете воспользоваться пустым шаблоном и оформить проект с нуля. Для этого во время выбора типа работы укажите «Чистый проект» и задайте размер холста. Затем выполните несколько действий.
В левой части экрана расположен раздел «Фотографии». Укажите необходимую папку и перетащите кадры на лист. Величину картинки можно изменить, потянув за углы. Также есть возможность повернуть фото с помощью зеленой точки над изображением.
Вы можете перенести любое количество фотографий
Дважды нажав на снимок, вы попадете во внутренний редактор фото, где можно:
Настройки сразу же отобразятся на макете
В разделе «Фон» вы можете выбрать задний план:
Вы можете настроить светлоту и размытие фона, применить контур и рамку
Для метрики с фото ребенка в хорошем качестве важно добавить декоративные элементы. Примените к снимкам рамки из коллекции софта или сделайте границы картинки неровными с помощью маски.
Чтобы добавить их к кадру, просто перетащите понравившееся обрамление на фото
Также в приложении есть фильтры: стилизуйте фото под старину, колоризируйте его или создайте эффект «рыбий глаз».
У некоторых эффектов есть возможность настроить силу воздействия
В разделе «Текст и украшения» введите надпись и добавьте ее на холст.
Вы можете разместить ее в любом месте
Выберите готовый стиль текста или выставите вручную значения параметров:
Настройки можно сохранить на будущее в качестве стиля текста
Блок «Клипарт» содержит стикеры. Они разбиты на категории: для детского коллажа подойдут животные, авто, цветы, разное.
Перетащите понравившийся на макет
Экспортировать материал можно как проект для продолжения работы в дальнейшем, шаблон или изображение. Также результат вы можете распечатать: укажите выводное устройство, формат бумаги, количество копий, маркеры обрезки.
Итог также можно сохранить в PDF
Теперь вы знаете, как создать метрику для новорожденных мальчиков и девочек своими руками. Для оформления не обязательно использовать сложное программное обеспечение. Сделайте плакат с помощью удобного приложения ФотоКОЛЛАЖ. Он позволит применять готовые шаблоны или выполнить работу вручную. Вы сможете изменять фон, добавлять текст и рамки, размещать клипарты. Скачайте программу для дизайна фотоколлажей и оформите панно, открытку или коллаж за считанные минуты!
В SmartMarket Studio вы можете получить статистику по смартапу: количество активных пользователей, сессий и входящих сообщений. Показатели доступны только пользователям с ролью «Владелец пространства», «Менеджер», «Администратор» или «Разработчик». Получить статистику можно за любой период, начиная с 1 июля 2021 г.
Статистика собирается по смартапу, в котором произошло хотя бы одно событие, например, запуск смартапа, отправка текстового сообщения и т. п. Если вы тестируете черновик смартапа, то эти данные также попадут в статистику.
Для просмотра метрик перейдите в карточку типа SmartApp и откройте раздел Аналитика. В разделе отобразятся следующие вкладки:
На вкладке Сводка отображаются показатели смартапа со всех поверхностей, на которых он запускался хотя бы раз. Данные представлены за 3 периода: предыдущий день, последние 7 дней и последние 30 дней.
Если есть данные за предыдущий период, на карточке будет видна динамика. Например, в карточке «за 7 дней» для периода 8–14 июня отобразится динамика по сравнению с предыдущими семью днями, т. е. 1–7 июня.
Нажмите на любую карточку, чтобы увидеть фильтры по выбранной метрике.
На каждой вкладке с метрикой доступны следующие фильтры: период, детализация и поверхности.
Период — за какое время отобразить данные:
Детализация — как сгруппировать данные на графике или в таблице:
Поверхности — мобильные приложения и умные устройства, на которых работает смартап. Например, если смартап не поддерживает мобильные приложения, то поверхности Салют и СберБанк Онлайн не отобразятся в фильтрах.
На вкладке Активные пользователи отображается количество уникальных пользователей, которые запускали смартап за указанный период. Представить информацию можно в виде графика или таблицы.
На вкладке с метрикой доступны следующие фильтры: период, детализация и поверхности. Подробнее читайте в разделе Фильтры.
На вкладке Сессии отображается количество клиентских сессий в смартапе за указанный период. Представить информацию можно в виде графика или таблицы.
Новая сессия начинается через 30 минут после последнего ответа ассистента. Например, если пользователь общается в смартапе с ассистентом 70 минут — это одна сессия. Если пользователь запустил смартап (первая сессия), но в следующий раз обратился к ассистенту только через 30 минут и более, то это будет две сессии.
На вкладке с метрикой доступны следующие фильтры: период, детализация и поверхности. Подробнее читайте в разделе Фильтры.
На вкладке Сообщения отображается количество входящих текстовых и голосовых сообщений. Представить информацию можно в виде графика или таблицы.
На вкладке с метрикой доступны следующие фильтры: период, детализация и поверхности. Подробнее читайте в разделе Фильтры. Дополнительно можно выбрать фильтр Данные, где доступна фильтрация по типу сообщений: все, текстовые или голосовые.
Да Нет
Хотите оставить дополнительный отзыв?
Отзывы будут отправляться в корпорацию Майкрософт. Нажав кнопку «Отправить», вы разрешаете использовать свой отзыв для улучшения продуктов и служб Майкрософт. Политика конфиденциальности.
Отправить
Спасибо!
В этой статье показано, как можно использовать шаблон Azure Resource Manager для настройки классических оповещений метрик Azure. Это позволяет автоматически настраивать оповещения для ресурсов при их создании, чтобы обеспечить правильный мониторинг всех ресурсов.
Основными шагами являются следующие:
Ниже описано, как сначала создать шаблон Resource Manager только для оповещения, а затем — как это сделать во время создания другого ресурса.
Чтобы создать оповещение с помощью шаблона Resource Manager, создайте ресурс типа Microsoft.Insights/alertRules
и заполните все связанные свойства. Ниже приведен шаблон, который создает правило генерации оповещений.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"alertName": {
"type": "string",
"metadata": {
"description": "Name of alert"
}
},
"alertDescription": {
"type": "string",
"defaultValue": "",
"metadata": {
"description": "Description of alert"
}
},
"isEnabled": {
"type": "bool",
"defaultValue": true,
"metadata": {
"description": "Specifies whether alerts are enabled"
}
},
"resourceId": {
"type": "string",
"defaultValue": "",
"metadata": {
"description": "Resource ID of the resource emitting the metric that will be used for the comparison. "
}
},
"metricName": {
"type": "string",
"defaultValue": "",
"metadata": {
"description": "Name of the metric used in the comparison to activate the alert."
}
},
"operator": {
"type": "string",
"defaultValue": "GreaterThan",
"allowedValues": [
"GreaterThan",
"GreaterThanOrEqual",
"LessThan",
"LessThanOrEqual"
],
"metadata": {
"description": "Operator comparing the current value with the threshold value."
}
},
"threshold": {
"type": "string",
"defaultValue": "",
"metadata": {
"description": "The threshold value at which the alert is activated."
}
},
"aggregation": {
"type": "string",
"defaultValue": "Average",
"allowedValues": [
"Average",
"Last",
"Maximum",
"Minimum",
"Total"
],
"metadata": {
"description": "How the data that is collected should be combined over time. "
}
},
"windowSize": {
"type": "string",
"defaultValue": "PT5M",
"metadata": {
"description": "Period of time used to monitor alert activity based on the threshold. Must be between five minutes and one day. ISO 8601 duration format."
}
},
"sendToServiceOwners": {
"type": "bool",
"defaultValue": true,
"metadata": {
"description": "Specifies whether alerts are sent to service owners"
}
},
"customEmailAddresses": {
"type": "string",
"defaultValue": "",
"metadata": {
"description": "Comma-delimited email addresses where the alerts are also sent"
}
},
"webhookUrl": {
"type": "string",
"defaultValue": "",
"metadata": {
"description": "URL of a webhook that will receive an HTTP POST when the alert activates. "
}
}
},
"variables": {
"customEmails": "[split(parameters('customEmailAddresses'), ',')]"
},
"resources": [
{
"type": "Microsoft.Insights/alertRules",
"name": "[parameters('alertName')]",
"location": "[resourceGroup().location]",
"apiVersion": "2016-03-01",
"properties": {
"name": "[parameters('alertName')]",
"description": "[parameters('alertDescription')]",
"isEnabled": "[parameters('isEnabled')]",
"condition": {
"odata.type": "Microsoft.Azure.Management.Insights.Models.ThresholdRuleCondition",
"dataSource": {
"odata.type": "Microsoft.Azure.Management.Insights.Models.RuleMetricDataSource",
"resourceUri": "[parameters('resourceId')]",
"metricName": "[parameters('metricName')]"
},
"operator": "[parameters('operator')]",
"threshold": "[parameters('threshold')]",
"windowSize": "[parameters('windowSize')]",
"timeAggregation": "[parameters('aggregation')]"
},
"actions": [
{
"odata. type": "Microsoft.Azure.Management.Insights.Models.RuleEmailAction",
"sendToServiceOwners": "[parameters('sendToServiceOwners')]",
"customEmails": "[variables('customEmails')]"
},
{
"odata.type": "Microsoft.Azure.Management.Insights.Models.RuleWebhookAction",
"serviceUri": "[parameters('webhookUrl')]",
"properties": {}
}
]
}
}
]
}
Описание схемы и свойств правила генерации оповещений доступно здесь.
Оповещение в шаблоне Resource Manager чаще всего используется, чтобы создать оповещение при создании ресурса. Например, может потребоваться, чтобы правило «ЦП% > 80» настроилось каждый раз при развертывании виртуальной машины. Для этого следует добавить в массив ресурсов для шаблона виртуальной машины правило генерации оповещений в качестве ресурса, а также добавить зависимость с помощью свойства dependsOn
, указав в нем идентификатор ресурса виртуальной машины. Ниже приведен полный пример, который создает виртуальную машину Windows и добавляет оповещение, которое уведомляет администраторов подписки, когда загрузка ЦП превышает 80 %.
{
"$schema": "https://schema.management.azure.com/schemas/2014-04-01-preview/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"newStorageAccountName": {
"type": "string",
"metadata": {
"Description": "The name of the storage account where the VM disk is stored."
}
},
"adminUsername": {
"type": "string",
"metadata": {
"Description": "The name of the administrator account on the VM."
}
},
"adminPassword": {
"type": "securestring",
"metadata": {
"Description": "The administrator account password on the VM."
}
},
"dnsNameForPublicIP": {
"type": "string",
"metadata": {
"Description": "The name of the public IP address used to access the VM. "
}
}
},
"variables": {
"location": "Central US",
"imagePublisher": "MicrosoftWindowsServer",
"imageOffer": "WindowsServer",
"windowsOSVersion": "2012-R2-Datacenter",
"OSDiskName": "osdisk1",
"nicName": "nc1",
"addressPrefix": "10.0.0.0/16",
"subnetName": "sn1",
"subnetPrefix": "10.0.0.0/24",
"storageAccountType": "Standard_LRS",
"publicIPAddressName": "ip1",
"publicIPAddressType": "Dynamic",
"vmStorageAccountContainerName": "vhds",
"vmName": "vm1",
"vmSize": "Standard_A0",
"virtualNetworkName": "vn1",
"vnetID": "[resourceId('Microsoft.Network/virtualNetworks',variables('virtualNetworkName'))]",
"subnetRef": "[concat(variables('vnetID'),'/subnets/',variables('subnetName'))]",
"vmID":"[resourceId('Microsoft.Compute/virtualMachines',variables('vmName'))]",
"alertName": "highCPUOnVM",
"alertDescription":"CPU is over 80%",
"alertIsEnabled": true,
"resourceId": "",
"metricName": "Percentage CPU",
"operator": "GreaterThan",
"threshold": "80",
"windowSize": "PT5M",
"aggregation": "Average",
"customEmails": "",
"sendToServiceOwners": true,
"webhookUrl": "http://testwebhook. test"
},
"resources": [
{
"type": "Microsoft.Storage/storageAccounts",
"name": "[parameters('newStorageAccountName')]",
"apiVersion": "2015-06-15",
"location": "[variables('location')]",
"properties": {
"accountType": "[variables('storageAccountType')]"
}
},
{
"apiVersion": "2016-03-30",
"type": "Microsoft.Network/publicIPAddresses",
"name": "[variables('publicIPAddressName')]",
"location": "[variables('location')]",
"properties": {
"publicIPAllocationMethod": "[variables('publicIPAddressType')]",
"dnsSettings": {
"domainNameLabel": "[parameters('dnsNameForPublicIP')]"
}
}
},
{
"apiVersion": "2016-03-30",
"type": "Microsoft.Network/virtualNetworks",
"name": "[variables('virtualNetworkName')]",
"location": "[variables('location')]",
"properties": {
"addressSpace": {
"addressPrefixes": [
"[variables('addressPrefix')]"
]
},
"subnets": [
{
"name": "[variables('subnetName')]",
"properties": {
"addressPrefix": "[variables('subnetPrefix')]"
}
}
]
}
},
{
"apiVersion": "2016-03-30",
"type": "Microsoft. Network/networkInterfaces",
"name": "[variables('nicName')]",
"location": "[variables('location')]",
"dependsOn": [
"[concat('Microsoft.Network/publicIPAddresses/', variables('publicIPAddressName'))]",
"[concat('Microsoft.Network/virtualNetworks/', variables('virtualNetworkName'))]"
],
"properties": {
"ipConfigurations": [
{
"name": "ipconfig1",
"properties": {
"privateIPAllocationMethod": "Dynamic",
"publicIPAddress": {
"id": "[resourceId('Microsoft.Network/publicIPAddresses',variables('publicIPAddressName'))]"
},
"subnet": {
"id": "[variables('subnetRef')]"
}
}
}
]
}
},
{
"apiVersion": "2016-03-30",
"type": "Microsoft. Compute/virtualMachines",
"name": "[variables('vmName')]",
"location": "[variables('location')]",
"dependsOn": [
"[concat('Microsoft.Storage/storageAccounts/', parameters('newStorageAccountName'))]",
"[concat('Microsoft.Network/networkInterfaces/', variables('nicName'))]"
],
"properties": {
"hardwareProfile": {
"vmSize": "[variables('vmSize')]"
},
"osProfile": {
"computername": "[variables('vmName')]",
"adminUsername": "[parameters('adminUsername')]",
"adminPassword": "[parameters('adminPassword')]"
},
"storageProfile": {
"imageReference": {
"publisher": "[variables('imagePublisher')]",
"offer": "[variables('imageOffer')]",
"sku": "[variables('windowsOSVersion')]",
"version": "latest"
},
"osDisk": {
"name": "osdisk",
"vhd": {
"uri": "[concat('http://',parameters('newStorageAccountName'),'. blob.core.windows.net/',variables('vmStorageAccountContainerName'),'/',variables('OSDiskName'),'.vhd')]"
},
"caching": "ReadWrite",
"createOption": "FromImage"
}
},
"networkProfile": {
"networkInterfaces": [
{
"id": "[resourceId('Microsoft.Network/networkInterfaces',variables('nicName'))]"
}
]
}
}
},
{
"type": "Microsoft.Insights/alertRules",
"name": "[variables('alertName')]",
"dependsOn": [
"[variables('vmID')]"
],
"location": "[variables('location')]",
"apiVersion": "2016-03-01",
"properties": {
"name": "[variables('alertName')]",
"description": "variables('alertDescription')",
"isEnabled": "[variables('alertIsEnabled')]",
"condition": {
"odata. type": "Microsoft.Azure.Management.Insights.Models.ThresholdRuleCondition",
"dataSource": {
"odata.type": "Microsoft.Azure.Management.Insights.Models.RuleMetricDataSource",
"resourceUri": "[variables('vmID')]",
"metricName": "[variables('metricName')]"
},
"operator": "[variables('operator')]",
"threshold": "[variables('threshold')]",
"windowSize": "[variables('windowSize')]",
"timeAggregation": "[variables('aggregation')]"
},
"actions": [
{
"odata.type": "Microsoft.Azure.Management.Insights.Models.RuleEmailAction",
"sendToServiceOwners": "[variables('sendToServiceOwners')]",
"customEmails": "[variables('customEmails')]"
},
{
"odata. type": "Microsoft.Azure.Management.Insights.Models.RuleWebhookAction",
"serviceUri": "[variables('webhookUrl')]",
"properties": {}
}
]
}
}
]
}
Приложение mamonsu представляет собой агент мониторинга, собирающий метрики Postgres Pro и системы, которые можно визуализировать на сервере Zabbix. В отличие от стандартного Zabbix Agent, который тоже можно настроить для сбора метрик Postgres Pro, mamonsu использует одно подключение к базе данных, что позволяет минимизировать влияние на целевую систему.
Агент mamonsu включает следующие компоненты:
Руководящий процесс, наблюдающий за активностью системы и базы данных.
Модули, определяющие, какие метрики Postgres Pro и системы будут собираться.
Файлы конфигурации и шаблона, в которых определяется, какие модули будут использоваться и как будут представляться собранные данные.
mamonsu является активным агентом, что означает, что он передаёт серверу Zabbix данные сразу, по мере их сбора. В mamonsu имеется набор готовых метрик для мониторинга Postgres Pro и системы, но вы можете разработать и дополнительные модули для сбора других интересующих вас метрик.
В mamonsu также реализован интерфейс командной строки для управления некоторыми параметрами сервера Zabbix, для получения общего представления о конфигурации целевой системы, а также для оптимизации параметров Postgres Pro и системы «на лету». Список всех команд mamonsu приведён в Разделе «Справка по командной строке».
Для использования mamonsu вы должны создать учётную запись Zabbix и настроить сервер Zabbix, как описано в документации Zabbix. Естественно, если вы планируете наблюдать за метриками Postgres Pro, у вас должен работать экземпляр Postgres Pro. Если вам нужны инструкции по установке и настройке кластера Postgres Pro, обратитесь к Главе 16 и Разделу 17. 2.
Тогда как метрики Postgres Pro mamonsu может собирать с удалённого кластера, метрики системы собираются только локально. Поэтому если вы решите собирать метрики удалённого экземпляра Postgres Pro, во избежание путаницы обязательно отключите системные метрики, иначе оба набора будут представлены в Zabbix как метрики одного узла.
Предварительно собранный пакет mamonsu распространяется в составе Postgres Pro Standard, но устанавливается отдельным инсталлятором. Завершив установку mamonsu, выполните следующие действия, чтобы начать сбор метрик:
По желанию произведите специальную подготовку mamonsu
Если вы опустите этот этап, метрики можно будет собирать только с правами суперпользователя, что не рекомендуется.
На этом этапе команда bootstrap
задаёт пользователя mamonsu, создаёт схему mamonsu
в базе данных, заданной явно или по умолчанию, а также расширения и объекты, необходимые для мониторинга.
Команда bootstrap
не имеет обязательных параметров. При запуске без параметров она берёт необходимые значения из файла конфигурации (по умолчанию — /etc/mamonsu/agent.conf
). Ниже приведён простой пример подготовительной процедуры:
В разделе [postgres]
файла agent.conf
укажите параметры подключения для кластера Postgres Pro, за которым вы собираетесь наблюдать. За дополнительными сведениями обратитесь к разделу Параметры подключения.
Выполните следующую команду для подготовки mamonsu:
mamonsu bootstrap
Эта команда создаст пользователя mamonsu
с паролем mamonsu
, а также функции мониторинга в базе данных, указанной в agent.conf
, и предоставит право выполнять их пользователю mamonsu
.
В следующем примере параметры bootstrap
передаются явно.
Создайте непривилегированного пользователя базы данных для mamonsu. Например:
CREATE USER mamonsu_user WITH PASSWORD 'mamonsu_password';
Создайте базу данных, которая будет применяться для установления подключения к Postgres Pro. Например:
CREATE DATABASE mamonsu_database OWNER mamonsu_user;
Выполните следующую команду для подготовки mamonsu:
mamonsu bootstrap -M mamonsu_user -x -c /etc/mamonsu/mamonsu.conf -d mamonsu_database -U postgres --host myhost --port 5432
Для получения подробной информации о параметрах -M
, -x
и -c
см. bootstrap
. За дополнительными сведениями о других параметрах обратитесь к разделу Параметры подключения. Эта команда создаст функции мониторинга в базе_mamonsu
и предоставит право выполнять их пользователю_mamonsu
. Кроме того, будет создано расширение pg_buffercache, позволяющее собирать метрики общего кеша буферов. При этом задаётся другой путь к файлу конфигурации.
В результате суперпользователь не требуется для дальнейших подключений. Обратите внимание, что в этой базе данных создаётся несколько таблиц в схеме mamonsu
. Не удаляйте эти таблицы, так как они необходимы для работы mamonsu.
Настройте mamonsu
Отредактируйте конфигурационный файл agent.conf
, по умолчанию размещённый в каталоге /etc/mamonsu/
>.
Настройте параметры, связанные с Zabbix. Значение address
должно указывать на работающий сервер Zabbix, а в поле client
должно задаваться имя узла Zabbix. Узлы, доступные для вашей учётной записи Zabbix, вы можете увидеть в его веб-интерфейсе на странице (Настройка) > (Узлы сети).
[zabbix] ; включён по умолчанию enabled =True
client =имя_узла_zabbix
address =сервер_zabbix
По умолчанию mamonsu будет собирать и метрики Postgres Pro, и системные метрики. При необходимости вы можете запретить сбор метрик первого или второго типа, установив в файле agent.conf
для параметра enabled
значение False
в разделе [postgres]
или [system]
, соответственно.
[system] ; включён по умолчанию enabled = True
Тогда как метрики Postgres Pro mamonsu может собирать с удалённого кластера, метрики системы собираются только локально. Поэтому если вы решите собирать метрики удалённого экземпляра Postgres Pro, во избежание путаницы обязательно отключите системные метрики, иначе оба набора будут представлены в Zabbix как метрики одного узла.
Если вы будете собирать метрики Postgres Pro, необходимо задать параметры подключения к кластеру Postgres Pro, за которым вы намерены наблюдать. Для этого задайте в полях user
, password
и database
соответственно имя пользователя (mamonsu_user
), пароль (mamonsu_password
) и базу данных (mamonsu_database
), указанные при подготовке. Если вы пропустили подготовительную процедуру, задайте имя и пароль суперпользователя, а также целевую базу.
[postgres] ; включён по умолчанию enabled = True user =пользователь_mamonsu
database =база_mamonsu
password =пароль_mamonsu
port = 5432
Это базовые параметры, позволяющие начать использование mamonsu. Кроме них можно настроить и другие параметры mamonsu, описанные в Разделе «Параметры конфигурации».
Настройте представление метрик на сервере Zabbix
Создайте шаблон, определяющий, как будут представляться собранные метрики на сервере Zabbix:
mamonsu export template template.xml
mamonsu формирует файл шаблона template.xml
в текущем каталоге. По умолчанию отображаемым в Zabbix именем шаблона будет PostgresPro-
, где OS
OS
— название вашей операционной системы. Чтобы получить шаблон с другим отображаемым именем, в показанную выше команду можно добавить аргумент --template-name
.
При желании укажите учётные данные в Zabbix в следующих переменных окружения в той системе, где настраивается мониторинг:
Задайте в переменных ZABBIX_USER
и ZABBIX_PASSWD
имя и пароль вашей учётной записи Zabbix, соответственно.
Задайте в переменной ZABBIX_URL
адрес http://zabbix/
Если этого не сделать, вам нужно будет указывать следующие параметры при каждом вызове любой подкоманды mamonsu zabbix
:
--url=http://zabbix/ --user=имя_пользователя_zabbix
--password=пароль_пользователя_zabbix
Загрузите шаблон template.xml
на сервер Zabbix.
mamonsu zabbix template export template.xml
Шаблон также можно загрузить через веб-интерфейс Zabbix: воспользуйтесь своей учётной записью в Zabbix и перейдите на страницу Templates (Шаблоны) > Import (Импорт).
Привяжите полученный шаблон к узлу, за которым будете наблюдать.
Для этого в веб-интерфейсе Zabbix выберите нужный узел, перейдите на страницу Templates (Шаблоны) > Add (Добавить), выберите шаблон и затем щёлкните Update (Обновить).
Завершив настройку, запустите mamonsu. Например, в системах Linux вы можете запустить mamonsu в виде службы так:
service mamonsu start
mamonsu считывает все параметры из файла конфигурации mamonsu и начинает мониторинг системы.
Синтаксис:
mamonsu agent { metric-list | metric-get имя_метрики
| version }
Предоставляет информацию о собираемых метриках из командной строки. Вы можете задать одно из следующих действий:
metric-list
Вывести список метрик, которые собирает mamonsu. Вывод этой команды включает ключ метрики, её последнее значение и время получения этого значения.
metric-get имя_метрики
Получить последнее значение указанной метрики. Список доступных метрик можно получить с помощью команды metric-list
.
version
Вывести версию mamonsu.
Синтаксис:
mamonsu bootstrap -Mимя пользователя
[-c[файл конфигурации
] | --config[=файл конфигурации
]] [-x | --create-extensions] [параметры подключения
]
Подготовить mamonsu к работе. Данная команда может принимать следующие параметры:
-M
Задаёт имя пользователя, который будет владеть всеми процессами mamonsu. Указанный пользователь не должен быть привилегированным.
-c файл_конфигурации
--config=файл_конфигурации
Задаёт файл agent. conf
, в котором раздел [postgres]
содержит имя базы данных, которое будет использоваться, если параметр --dbname
не указан среди
.параметров подключения
Значение по умолчанию: /etc/mamonsu/agent.conf
-x
--create-extensions
Создаёт вспомогательные расширения. На данный момент будет создано только pg_buffercache, которое теперь не создаётся по умолчанию.
параметры_подключения
Необязательные параметры подключения, задаваемые в командной строке.
Синтаксис:
mamonsu export configимя_файла
.conf [--add-plugins=каталог_модулей
] mamonsu export templateимя_файла
.xml [--add-plugins=каталог_модулей
] [--template-name=имя_шаблона
] [--application=имя_приложения
] [--old-zabbix]
Сгенерировать файл конфигурации или файл шаблона для набора метрик. Для настройки набора метрик можно передать дополнительные параметры:
--add-plugins=каталог_модулей
Собирать метрики, определённые в дополнительных модулях, расположенных в заданном каталоге_модулей
. Если вы будете использовать какие-либо дополнительные модули, этот параметр нужно передавать при формировании файла конфигурации и шаблона.
--template-name=имя_шаблона
Задаёт название шаблона, которое будет отображаться на сервере Zabbix.
Значение по умолчанию: PostgresPro-
, где OS
OS
— название вашей операционной системы
--application=имя_приложения
Задаёт идентификатор, с которым собранные метрики будут отображаться на сервере Zabbix.
Значение по умолчанию: App-PostgresPro-
, где OS
OS
— название вашей операционной системы
--old-zabbix
Экспортировать шаблон для сервера Zabbix версии 4. 2 или старее. По умолчанию шаблон генерируется в формате, совместимом с Zabbix 4.4 и новее.
Синтаксис:
mamonsu export zabbix-parametersимя_файла
.conf [--add-plugins=каталог_модулей
] [--plugin-type={pg | sys | all}] [--pg-version=версия
] [--config=файл_конфигурации
]
Экспортировать конфигурацию метрик для использования со стандартным агентом Zabbix. Для настройки сбора метрик можно передать дополнительные параметры:
--add-plugins=каталог_модулей
Собирать метрики, определённые в дополнительных модулях, расположенных в заданном каталоге_модулей
. Если вы будете использовать какие-либо дополнительные модули, этот параметр нужно передавать при формировании файла конфигурации и шаблона.
--plugin-type={pg | sys | all}
Типы метрик, которые должны собираться:
pg
— метрики Postgres Pro.
sys
— системные метрики.
all
— все метрики.
По умолчанию: all
--pg-version=версия
Задаёт основную версию сервера, для которого будет настраиваться набор метрик. Программа mamonsu
может собирать метрики во всех поддерживаемых версиях Postgres Pro, а также в PostgreSQL, начиная с версии 9.5.
Значение по умолчанию: 10
--config=файл_конфигурации
Задаёт путь к файлу agent.conf
, который будет источником определений метрик.
Значение по умолчанию: /etc/mamonsu/agent.conf
Синтаксис:
mamonsu export zabbix-templateимя_файла
. conf [--add-plugins=каталог_модулей
] [--plugin-type={pg | sys | all}] [--template-name=имя_шаблона
] [--application=имя_приложения
] [--config=файл_конфигурации
] [--old-zabbix]
Экспортировать шаблон для использования со стандартным агентом Zabbix. Для настройки конфигурации можно передать дополнительные параметры:
--add-plugins=каталог_модулей
Собирать метрики, определённые в дополнительных модулях, расположенных в заданном каталоге_модулей
. Если вы будете использовать какие-либо дополнительные модули, этот параметр нужно передавать при формировании файла конфигурации и шаблона.
--plugin-type={pg | sys | all}
Типы метрик, которые должны собираться:
pg
— метрики Postgres Pro.
sys
— системные метрики.
all
— все метрики.
По умолчанию: all
--template-name=имя_шаблона
Задаёт название шаблона, которое будет отображаться на сервере Zabbix.
Значение по умолчанию: PostgresPro-
, где OS
OS
— название вашей операционной системы
--application=имя_приложения
Задаёт идентификатор, с которым собранные метрики будут отображаться на сервере Zabbix.
Значение по умолчанию: App-PostgresPro-
, где OS
OS
— название вашей операционной системы
--config=файл_конфигурации
Задаёт путь к файлу agent.conf
, который будет источником определений метрик.
Значение по умолчанию: /etc/mamonsu/agent. conf
--old-zabbix
Экспортировать шаблон для сервера Zabbix версии 4.2 или старее. По умолчанию шаблон генерируется в формате, совместимом с Zabbix 4.4 и новее.
Синтаксис:
mamonsu report [--run-system=логическое_значение
] [--run-postgres=логическое_значение
] [--print-report=логическое_значение
] [--report-path=файл_отчёта
] [--disable-sudo] [параметры_подключения
]
Выдать подробный отчёт об оборудовании, операционной системе, использовании памяти и других характеристиках объекта мониторинга, а также конфигурацию Postgres Pro.
Отчёт настраивается с помощью следующих необязательных параметров:
--run-system=логическое_значение
Включить в генерируемый отчёт информацию о системе.
По умолчанию: True
(вкл. )
--run-postgres=логическое_значение
Включить в генерируемый отчёт информацию о Postgres Pro.
По умолчанию: True
(вкл.)
--print-report=логическое_значение
Вывести отчёт в stdout.
По умолчанию: True
(вкл.)
--report-path=файл_отчёта
Вывести отчёт в указанный файл.
Путь по умолчанию: /tmp/report.txt
--disable-sudo
Собирать при формировании отчёта только те данные, для получения которых не нужны права суперпользователя. Этот режим поддерживается только в системах Linux.
параметры_подключения
Необязательные параметры подключения, задаваемые в командной строке.
Синтаксис:
mamonsu tune [--dry-run] [--disable-sudo] [--log-level {INFO|DEBUG|WARN}]
[--dont-tune-pgbadger] [--dont-reload-postgresql]
[параметры_подключения
]
Оптимизировать конфигурацию Postgres Pro и системы, исходя из собранной статистики. Настроить оптимизацию позволяют следующие параметры:
--dry-run
Вывести параметры конфигурации системы и Postgres Pro, которые будут настроены, но не изменять их фактически.
--disable-sudo
Оптимизировать только те параметры, для изменения которых не нужны права суперпользователя. Этот режим поддерживается только в системах Linux.
--dont-tune-pgbadger
Не оптимизировать параметры pgbadger.
--log-level { INFO | DEBUG | WARN}
Изменить уровень детализации сообщений.
Значение по умолчанию: INFO
--dont-reload-postgresql
Не допустить выполнения приложением mamonsu функции pg_reload_conf()
. В этом случае изменения некоторых параметров, которые вступают в силу только после перезагрузки конфигурации Postgres Pro, не начнут действовать немедленно.
параметры_подключения
Необязательные параметры подключения, задаваемые в командной строке.
Синтаксис:
mamonsu upload [--zabbix-file=файл_метрик
] [--zabbix-address=адрес_zabbix
] [--zabbix-port=порт
] [--zabbix-client=имя_узла_zabbix
] [--zabbix-log-level={INFO|DEBUG|WARN}]
Передать данные метрик, ранее сохранённые в файле, на сервер Zabbix для визуализации. Более подробно получение файла метрик рассматривается в Подразделе «Параметры вывода».
Эта команда может принимать следующие параметры:
--zabbix-address=адрес_zabbix
Адрес сервера Zabbix.
Значение по умолчанию: localhost
--zabbix-port=порт
Порт сервера Zabbix.
Значение по умолчанию: 10051
--zabbix-file=файл_метрик
Имя текстового файла с метриками, которые можно визуализировать, например localhost. log
.
--zabbix-client=имя_узла_zabbix
Имя узла в Zabbix.
Значение по умолчанию: localhost
--zabbix-log-level={INFO|DEBUG|WARN}
Изменить уровень детализации сообщений.
Значение по умолчанию: INFO
Синтаксис:
mamonsu zabbix item {error | lastvalue | lastclock } имя_узла
Просмотреть заданное свойство последних метрик, полученных сервером Zabbix для указанного узла.
Синтаксис:
mamonsu zabbix version
Получить версию сервера Zabbix, к которой подключён агент mamonsu.
Синтаксис:
mamonsu zabbix host list mamonsu zabbix host showимя_узла
mamonsu zabbix host idимя_узла
mamonsu zabbix host deleteид_узла
mamonsu zabbix host createимя_узла
ид_группы_узлов
ид_шаблона
адрес_mamonsu
mamonsu zabbix host info {templates | hostgroups | graphs | items}ид_узла
Позволяет управлять узлами Zabbix, выполняя одно из действий, описанных в Подразделе «Управление сервером Zabbix».
Синтаксис:
mamonsu zabbix hostgroup list mamonsu zabbix hostgroup showимя_группы_узлов
mamonsu zabbix hostgroup idимя_группы_узлов
mamonsu zabbix hostgroup deleteид_группы_узлов
mamonsu zabbix hostgroup createимя_группы_узлов
Позволяет управлять группами узлов Zabbix, выполняя одно из действий, описанных в Подразделе «Управление сервером Zabbix».
Синтаксис:
mamonsu zabbix template list mamonsu zabbix template showимя_шаблона
mamonsu zabbix template idимя_шаблона
mamonsu zabbix template deleteид_шаблона
mamonsu zabbix template exportфайл
Позволяет управлять шаблонами Zabbix, выполняя одно из действий, описанных в Подразделе «Управление сервером Zabbix».
Синтаксис:
mamonsu --version
Вывести версию mamonsu
.
Синтаксис:
mamonsu --help
Вывести справку по параметрам командной строки mamonsu
.
При вызове вышеуказанных команд параметры_подключения
в командной строке задают параметры подключения к целевому кластеру Postgres Pro. параметры_подключения
могут содержать аргументы --host
, --port
, --dbname
(-d
), --username
(-U
), и --password
(-W
). В аргументе --dbname
(-d
) должна указываться mamonsu_database
, созданная для наблюдения. Заметьте, что в аргументе --username
(-U
) необходимо передать имя суперпользователя в данном кластере.
Если параметры_подключения
не задаются явно, mamonsu пытается получить их значения из соответствующих переменных окружения. Когда никакие значения не заданы, mamonsu пытается подключиться к базе текущий_пользователь
локального сервера через порт 5432 от имени текущий_пользователь
, где текущий_пользователь
— имя пользователя операционной системы. Если для подключения к вашему кластеру Postgres Pro нужно использовать другие параметры подключения, их необходимо задать явно.
Используя mamonsu, вы можете управлять некоторой функциональностью Zabbix из командной строки. А именно, вы можете создавать или удалять узлы и группы узлов Zabbix, а также генерировать, импортировать и удалять шаблоны Zabbix с помощью описанных ниже команд. В них имя_объекта
должно соответствовать типу объекта Zabbix в команде: template (шаблон), host (узел) или hostgroup (группа узлов).
list
Вывести список доступных шаблонов, узлов или групп узлов.
show
имя_объекта
Вывести информацию об указанном шаблоне, узле или группе узлов.
id
имя_объекта
Показать идентификатор заданного объекта, назначаемый автоматически сервером Zabbix.
delete
ид_объекта
Удалить объект с заданным идентификатором.
create
имя_группы_узлов
create
имя_узла
ид_группы_узлов
ид_шаблона
адрес_mamonsu
Создать новый узел или группу узлов.
export
имя_шаблона
Сформировать шаблон Zabbix.
info {templates | hostgroups | graphs | items} ид_узла
Вывести подробную информацию о шаблонах, группах узлов, графиках и метриках, связанных с узлом с заданным идентификатором.
Файл конфигурации agent.conf
по умолчанию располагается в каталоге /etc/mamonsu
. Он содержит несколько групп параметров, определяющих, какие метрики собирать и как выводить собранные данные:
Все параметры должны задаваться в формате
.параметр
= значение
В разделе [postgres]
настраивается сбор метрик Postgres Pro и могут содержаться следующие параметры:
enabled
Включает/отключает сбор метрик Postgres Pro при значении, равном True
или False
, соответственно.
По умолчанию: True
(вкл.)
user
Пользователь, от имени которого будут запускаться процессы наблюдения за кластером. Это должен быть пользователь mamonsu, заданный при подготовке, либо суперпользователь, если команда bootstrap
не запускалась.
Имя по умолчанию: postgres
password
Пароль указанного пользователя.
database
База данных, через подключение к которой будут собираться метрики.
Имя по умолчанию: postgres
host
Адрес сервера базы данных.
Значение по умолчанию: localhost
port
Целевой порт на сервере.
Значение по умолчанию: 5432
application_name
Имя приложения, идентифицирующее процесс mamonsu, выполняющийся в кластере Postgres Pro.
Значение по умолчанию: mamonsu
query_timeout
Значение statement_timeout для сеанса mamonsu, в секундах. Если запрос метрики Postgres Pro не успевает выполниться за указанное время, он прерывается.
Значение по умолчанию: 10
В разделе [system]
настраивается сбор системных метрик и могут содержаться следующие параметры:
enabled
Включает/отключает сбор системных метрик при значении, равном True
или False
, соответственно.
По умолчанию: True
(вкл.)
В разделе [zabbix]
настраиваются свойства подключения к серверу Zabbix и могут содержаться следующие параметры:
enabled
Включает/отключает передачу собранных метрик на сервер Zabbix при значении, равном True
или False
, соответственно.
По умолчанию: True
(вкл.)
client
Имя узла в Zabbix.
address
Адрес сервера Zabbix.
Значение по умолчанию: 127.0.0.1
port
Порт сервера Zabbix.
Значение по умолчанию: 10051
В разделе [agent]
задаётся расположение службы mamonsu и включается возможность обращения к метрикам в командной строке:
enabled
Включает/отключает сбор метрик в командной строке с помощью команды agent
.
По умолчанию: True
(вкл.)
host
Адрес системы, в которой работает mamonsu.
Значение по умолчанию: 127.0.0.1
port
Порт, через который mamonsu принимает соединения.
Значение по умолчанию: 10052
В разделе [sender]
определяется размер очереди, в которой накапливаются данные, прежде чем они передаются серверу Zabbix:
queue
Максимальное количество собранных значений метрик, которое может накапливаться локально, прежде чем mamonsu передаст их на сервер Zabbix. После передачи накопленных данных очередь очищается.
Значение по умолчанию: 2048
В разделе [metric_log]
настраивается сохранение собранных значений метрик в локальных текстовых файлах. Этот раздел может содержать следующие параметры:
enabled
Включает/отключает сохранение собранных значений метрик в текстовом файле. Если этот параметр равен True
, mamonsu создаёт файл localhost.log
для сохранения значений метрик.
Значение по умолчанию: False
directory
Указывает каталог, в котором будут сохранятся данные метрик.
Каталог по умолчанию: /var/log/mamonsu
max_size_mb
Максимальный размер файла метрик, в мегабайтах. По достижении заданного размера этот файл переименовывается в localhost.log.archive
, и создаётся новый файл localhost. log
.
Значение по умолчанию: 1024
В разделе [log]
настраивается запись сообщений в журнал mamonsu и могут содержаться следующие параметры:
file
Задаёт имя файла журнала; может также задавать полный путь.
level
Задаёт уровень отладки. Этот параметр может принимать значение DEBUG
, ERROR
или INFO
.
Значение по умолчанию: INFO
format
Формат записываемых сообщений.
Значение по умолчанию: [%(asctime)s] %(asctime)s - %(name)s - %(message)s
Здесь levelname
— уровень важности сообщения, asctime
— текущее время, name
— имя модуля, выдавшего это сообщение (либо root
, если сообщение выдано не модулем), и message
— собственно текст сообщения.
В разделе [plugins]
описываются дополнительные модули, осуществляющие сбор метрик, и могут содержаться следующие параметры:
enabled
Включает/отключает дополнительные модули, осуществляющие сбор метрик, при значении равном True
или False
, соответственно.
Значение по умолчанию: False
directory
Задаёт каталог, содержащий дополнительные модули. При значении, равном None
, использование дополнительных модулей отключается.
Значение по умолчанию: /etc/mamonsu/plugins
Если вы хотите настроить модуль, который вы дополнительно добавили в mamonsu после установки, для него нужно добавить раздел параметров в файл agent.conf
.
Синтаксис, которому должен соответствовать этот раздел, показан в примере в Подразделе «Разделы отдельных модулей».
Все встроенные модули устанавливаются в составе mamonsu. Чтобы настроить такой модуль, найдите соответствующий ему раздел под заголовком Individual Plugin Sections
(Разделы отдельных модулей) и измените значения параметров.
Чтобы отключить какой-либо модуль, присвойте его параметру enabled
значение False
, а чтобы включить — значение True
. Эти значения задаются с учётом регистра.
В следующем примере показаны разделы, соответствующие встроенным модулям preparedtransaction
и pgprobackup
:
[preparedtransaction] max_prepared_transaction_time = 60 interval = 60 [pgprobackup] enabled = false interval = 300 backup_dirs = /backup_dir1,/backup_dir2 pg_probackup_path = /usr/bin/pg_probackup-11
Этот модуль получает возраст старейшей подготовленной транзакции в секундах, а также число всех транзакций, подготовленных для двухфазной фиксации. За дополнительными сведениями обратитесь к PREPARE TRANSACTION и Разделу 48.69.
Параметр max_prepared_transaction_time
задаёт в секундах пороговое значения для возраста подготовленной транзакции.
Параметр interval
позволяет изменить интервал сбора метрик.
Данный модуль собирает две метрики: pgsql.prepared.count
(число подготовленных транзакций) и pgsql.prepared. oldest
(возраст старейшей подготовленной транзакции в секундах).
Если значение pgsql.prepared.oldest
превышает порог, заданный параметром max_prepared_transaction_time
, срабатывает триггер со следующим сообщением: «PostgreSQL prepared transaction is too old on {host}» (Слишком старая подготовленная транзакция PostgreSQL на {узел}).
Этот модуль обращается к программе pg_probackup для отслеживания состояния её резервных копий, а также вычисляет объём каталогов, в которых хранятся все файлы копий.
Заметьте, что этот модуль подсчитывает общий объём всех файлов в целевом каталоге. Убедитесь в том, что в целевой каталог не попадают посторонние файлы.
Параметр backup_dirs
задаёт разделённый запятыми список путей к каталогам, для которых будут собираться метрики.
Параметр pg_probackup_path
задаёт путь к программе pg_probackup.
Параметр interval
позволяет изменить интервал сбора метрик.
По умолчанию этот модуль отключён. Чтобы включить его, задайте для параметра enabled
значение True
.
Данный модуль собирает две метрики: pg_probackup.dir.size[#каталог_копий]
(объём целевого каталога) и pg_probackup.dir.error[#каталог_копий]
(ошибки копий) для каждого указанного каталога_копий
.
Если какая-либо копия имеет ошибочное состояние, например ERROR
, CORRUPT
, ORPHAN
, этот модуль вызывает срабатывание триггера.
Сразу после запуска mamonsu начинает сбор метрик системы и Postgres Pro. Команда agent
позволяет в реальном времени получать текущие значения собираемых метрик в командной строке.
Чтобы просмотреть список имеющихся метрик, воспользуйтесь командой agent metric-list
:
mamonsu agent metric-list
Вывод этой команды включает ключ метрики, её последнее значение и время получения этого значения. Например:
system.memory[active] 7921004544 1564570818 system.memory[swap_cache] 868352 1564570818 pgsql.connections[idle] 6.0 1564570818 pgsql.archive_command[failed_trying_to_archive] 0 1564570818
Чтобы просмотреть текущее значение определённой метрики, воспользуйтесь командой agent metric-get
:
mamonsu agent metric-get имя_метрики
Здесь имя_метрики
— ключ интересующей вас метрики, представленный в выводе команды metric-list
. Например: pgsql.connections[idle]
.
Вы можете просмотреть графики собранных метрик в веб-интерфейсе Zabbix в разделе (Графики). Подробнее об использовании Zabbix рассказывается в его официальной документации по адресу https://www.zabbix.com/documentation/current/ru/.
Если вы решили сохранять все собираемые метрики в файле как описано в «Параметры вывода», собранные метрики можно передать на сервер Zabbix для визуализации, воспользовавшись командой upload.
Вы можете расширить функциональность mamonsu, добавив собственные дополнительные модули следующим образом:
Сохраните все нужные вам дополнительные модули в одном каталоге, например, в /etc/mamonsu/plugins
.
Убедитесь в том, что этот каталог указан в файле конфигурации в разделе [plugins]
:
[plugins] directory = /etc/mamonsu/plugins
Сгенерируйте новый шаблон Zabbix, включающий информацию дополнительных модулей:
mamonsu export template template.xml --add-plugins=/etc/mamonsu/plugins
Загрузите сгенерированный template.xml
на сервер Zabbix, как описано в Разделе «Установка и подготовка».
В зависимости от собранных значений метрик, mamonsu может настроить конфигурацию Postgres Pro и системы для оптимальной производительности.
Вы можете получить подробную информацию об оборудовании, операционной системе, использовании памяти и других характеристиках объекта мониторинга, а также конфигурацию Postgres Pro, выполнив команду:
mamonsu report
Чтобы только просмотреть предлагаемые для оптимизации изменения, но не применять их, запустите команду tune
с ключом --dry-run
:
mamonsu tune --dry-run
Чтобы предлагаемые изменения были применены, запустите команду tune
без каких-либо параметров:
mamonsu tune
Вы можете исключить некоторые параметры из отчёта или отключить некоторые методы оптимизации, передав дополнительные аргументы. Полный список аргументов команд report
и tune
приведён в Разделе «Справка по командной строке».
Приложение mamonsu позволяет работать с сервером Zabbix, используя командную строку. В частности, вы можете загружать файлы шаблонов на сервер Zabbix, создавать и удалять узлы и группы узлов Zabbix, привязывать шаблоны к узлам и получать последние значения метрик.
Чтобы настроить узел мониторинга в Zabbix с самого начала, вы можете выполнить следующие действия:
При желании укажите учётные данные в Zabbix в следующих переменных окружения в той системе, где настраивается мониторинг:
Задайте в переменных ZABBIX_USER
и ZABBIX_PASSWD
имя и пароль вашей учётной записи Zabbix, соответственно.
Задайте в переменной ZABBIX_URL
адрес http://zabbix/
Если этого не сделать, вам нужно будет указывать следующие параметры при каждом вызове любой подкоманды mamonsu zabbix
:
--url=http://zabbix/ --user=имя_пользователя_zabbix
--password=пароль_пользователя_zabbix
Сгенерируйте новый файл шаблона и загрузите его на сервер Zabbix:
mamonsu export template template. xml mamonsu zabbix template export template.xml
Создайте новую группу узлов:
mamonsu zabbix hostgroup create имя_группы_узлов
Определите идентификаторы созданной группы и загруженного шаблона, назначаемые автоматически сервером Zabbix:
mamonsu zabbix hostgroup idимя_группы_узлов
mamonsu zabbix template idимя_шаблона
Создайте узел, связанный с этой группой, и привяжите к нему загруженный шаблон с помощью одной команды:
mamonsu zabbix host createимя_узла
ид_группы_узлов
ид_шаблона
адрес_mamonsu
Здесь имя_узла
— имя создаваемого узла, ид_группы_узлов
и ид_шаблона
— уникальные идентификаторы, полученные на предыдущем шаге, а mamonsu_address
— IP-адрес системы, в которой работает mamonsu.
Создав узел в Zabbix, произведите настройку целевой системы, как описано в Разделе «Установка и подготовка».
Используя mamonsu, вы можете преобразовать определения метрик системы и Postgres Pro в формат, который поддерживает стандартный агент Zabbix.
В настоящее время эта функциональность имеет следующие ограничения:
В Windows экспорт метрик mamonsu
не поддерживается.
Определения метрик входящего в Postgres Pro Enterprise расширения pg_wait_sampling
и механизма CFS не преобразуются.
Чтобы использовать агент Zabbix для сбора метрик mamonsu, выполните следующее:
Сгенерируйте файл конфигурации, совместимый со стандартным агентом Zabbix, и поместите его в /etc/zabbix/zabbix_agent.d/
. Вы можете добавить нужный путь перед именем файла:
mamonsu export zabbix-parameters /etc/zabbix/zabbix_agent.d/zabbix_agent. conf
Все имеющиеся параметры команды export zabbix-parameters
описаны в Разделе «Справка по командной строке».
Сгенерируйте шаблон для стандартного агента Zabbix:
mamonsu export zabbix-template template.xml
Все параметры команды export zabbix-template
описаны в Разделе «Справка по командной строке».
Загрузите сгенерированный шаблон на сервер Zabbix, как описано в Разделе «Установка и подготовка».
Если вы намерены собирать метрики Postgres Pro, после загрузки шаблона измените в веб-интерфейсе следующие макросы:
Вместо {$PG_CONNINFO}
укажите параметры подключения к серверу Postgres Pro, за которым вы намерены наблюдать.
Вместо {$PG_PATH}
укажите путь к каталогу, где установлена программа psql.
Мемфис дизайн геометрические фигуры узоры мода 80 90 х годов
4167*4167
поп арт 80 х патч стикер
3508*2480
поп арт 80 х патч стикер
3508*2480
дизайн плаката премьера фильма кино с белым вектором экрана ба
1200*1200
Мемфис бесшовные модели 80 х 90 х стилей
4167*4167
поп арт 80 х патч стикер
2292*2293
Мемфис шаблон 80 х 90 х годов стилей фона векторные иллюстрации
4167*4167
80 е брызги краски дизайн текста
1200*1200
милая ретро девушка 80 х 90 х годов
800*800
набор векторных иконок реалистичные погоды изолированных на прозрачной ба
800*800
80 основных форм силуэта
5000*5000
рисованной радио 80 х
1200*1200
Дизайн персонажей моды 80 х годов может быть коммерческими элементами
2000*2000
малыш парень им значок на прозрачных ба новорожденного весы вес
5556*5556
Головной мозг гипноз психология синий значок на абстрактное облако ба
5556*5556
Ретро трехмерный цветной градиент 80 х арт дизайн
1200*1200
Крутая музыка вечеринка певца креативный постер музыка Я Май Ба концерт вечер К
3240*4320
80 е в стиле ретро мода цвет градиент арт дизайн
1200*1200
Персонаж из партии 80 х годов
1200*1200
вектор поп арт иллюстрацией черная женщина шопинг
800*800
поп арт 80 х патч стикер
3508*2480
аудиокассета изолированные вектор старая музыка ретро плеер ретро музыка аудиокассета 80 х пустой микс
5000*5000
в первоначальном письме векторный дизайн логотипа шаблон
1200*1200
80 летнего юбилея векторный дизайн шаблона иллюстрация
4083*4083
Векторная иллюстрация мультфильм различных овощей на деревянном ба
800*800
Ретро мода неоновый эффект 80 х тема художественное слово
1200*1200
ретро стиль 80 х годов диско дизайн неон плакат
5556*5556
поп арт 80 х патч стикер
3508*2480
ба конфеты шоколад
800*800
80 летний юбилей дизайн шаблона векторные иллюстрации
4083*4083
Модель буквы м в стиле 80 х
1200*1200
диско дизайн в стиле ретро 80 х неон
5556*5556
Шань Хай Цзин Ба змея Отличный зверь монстр
2000*2000
Нарисованный 80 х годов ретро мужчина средних лет
2000*2000
80 лет юбилей красный шар вектор шаблон дизайн иллюстрация
4167*4167
80 летний юбилей дизайн шаблона векторные иллюстрации
4084*4084
концепция образования в выпускном вечере баннер с цоколем и золотой ба
6250*6250
Мода стерео ретро эффект 80 х годов тема искусства слово
1200*1200
капсулы или пилюли витамина b4 диетические
2000*2000
Модный стиль ретро 80 х годов дискотека тема искусства слово
1200*1200
чат комментарий образование синий значок на абстрактных облако сообщение
5556*5556
вектор поп арт иллюстрацией черная женщина шопинг
800*800
80 летие векторный дизайн шаблона иллюстрация
4167*4167
скидки до 80 векторный дизайн шаблона иллюстрация
4083*4083
скидка 80 от вектор дизайн шаблона иллюстрация
4083*4083
Тенденция персонажа мультфильма 80 х годов
2000*2000
Кассета для вечеринок в стиле ретро 80 х
1200*1200
Мода цвет 80 х годов ретро вечеринка слово искусства
1200*1200
Рождество 80 х годов ретро пиксель
9449*5315
80 х годов поп арт мультфильм банановая наклейка
8334*8334
Статья написана на основе доклада Максима Чудинова, инженера-интегратора Zabbix.
В этой статье мы расскажем о некоторых новых шаблонах, добавленных в версию Zabbix 5.0.
Шаблон IPMI работает только с пятой версией системы мониторинга Zabbix, потому что построен на новом ключе impi.get, который использован в качестве мастер-метрики. Ключ запрашивает у контроллера IMPI все датчики с их значениями и порогами и возвращает полученную информацию в формате JSON. В соответствии с правилами низкоуровневого обнаружения из этих данных создаются метрики для дискретных и пороговых датчиков. Метрики получают данные путем предварительной обработки значения из мастер-метрики с помощью JSONPath.
Результат в формате JSON
Если на контроллере заданы не все пороговые значения, система не может создать триггеры из-за неправильного триггерного выражения, потому что для пустых значений триггера в рамках низкоуровневого обнаружения макрос не раскрывается. В результате появляется сообщение о неработающем триггере.
Сообщение о неработающем триггере
В более ранних версиях рекомендовалось самостоятельно указать на контроллере все отсутствующие пороги. В Zabbix 5.0 появилась новая функция Overrides, которая позволяет переопределить правило низкоуровневого обнаружения и задать фильтры, чтобы результат не содержал лишних данных.
Правила низкоуровневого обнаружения
Новая функция Override
В новом шаблоне для каждого прототипа триггера предусмотрено условие: если макрос не раскрывается, он присутствует в триггере как обычный текст. Поэтому стало возможным предусмотреть правило не создавать триггер, если он содержит имя макроса, а не его значение. Таким образом создаются только триггеры с обнаруженными пороговыми значениями.
Создание триггеров
Поскольку используется несколько пороговых значений с разным уровнем предупреждения, в триггерах заложена зависимость друг от друга: триггер с меньшим пороговым значением не срабатывает, когда срабатывает триггер с большим пороговым значением. Поэтому может появиться сообщение о том, что создать зависимость невозможно.
Сообщение о невозможности создать зависимость
Это не влияет на работоспособность шаблона. Наша команда продолжает работать над изменением кода, чтобы обрабатывать такие ситуации. Но пока мы по-прежнему рекомендуем задавать все отсутствующие пороговые значения на контроллере.
В шаблоне для устройств MikroTik были добавлены правила обнаружения.
Новые правила обнаружения в шаблоне Net Mikrotik SNMP
В обновленный шаблон добавлены правила обнаружения метрик каналов WiFi. Фактически это дополнительные метрики для обнаружения сетевых интерфейсов с типом 71 для точек доступа и с типом 1 для контроллера. Отдельные правила для точек и контроллеров созданы потому, что в зависимости от режима работы устройства данные выдаются с разными идентификаторами object ID. Если устройство работает как контроллер, создаются метрики с именем канала, статусом и количеством аутентифицированных и пытающихся аутентифицироваться клиентов.
Создаваемые метрики правила обнаружения для контроллера
ПРИМЕЧАНИЕ. Контроллер не передает данные об SSID, поэтому соответствующая метрика отсутствует. Единственный триггер в этом правиле обнаружения — состояние канала. Состояние ‘running-ap‘ означает, что точка доступа доступна и канал активен. В любом другом случае срабатывает триггер, что означает отключение канала на контроллере, отключение точки от локальной сети или от электропитания.
Результаты выполнения правила обнаружения
Если точка доступа работает в режиме standalone, создаются метрики SSID, полоса, уровень сигнала, уровень шума, аутентифицированные и пытающиеся аутентифицироваться клиенты.
Создаваемые метрики правила обнаружения для точки доступа
ПРИМЕЧАНИЕ. Если точка доступа находится под управлением контроллера и создана в Zabbix как отдельный хост, к которому привязан описываемый шаблон, правило обнаружение не сможет получить какие-либо данные, потому что в таком режиме информация о WiFi каналах отсутствует.
На некоторых устройствах MikroTik есть датчики температуры. Новое правило обнаружения позволяет обнаружить датчик температуры и создать метрику с тремя триггерами для пороговых значений температуры. Значения задаются через макросы и могут быть переопределены на уровне хоста.
Метрика правила обнаружения для датчика температуры устройства MikroTik
Теперь в базовой поставке Zabbix содержит новый шаблон, разработанный для безагентского мониторинга СУБД Microsoft SQL Server начиная с версии 2016 для Linux и Windows платформ. Новый шаблон, используя минимальное количество устанавливаемых соединений, обеспечивает сбор метрик:
— доступность, версия, время работы,
— количество операций в секунду,
— счетчики запросов, блокировок, ошибок
— размеры баз данных,
— состояние репликации.
Описание, readme-файл и ссылка на шаблон размещены в документации Zabbix.
ПРИМЕЧАНИЕ.
[\]
Driver = ODBC Driver 17 for SQL Server
Server = <IP или FQDN>, <TCP порт>
{\$MSSQL.DSN} = <…>
{\$MSSQL.USER} = <…>
{\$MSSQL.PASSWORD} = <…>
{\$MSSQL.PORT} = 1433
{$MSSQL.INSTANCE} = SQLServer или MSSQL$<имя экземпляра>
Задать порт необходимо в случае установки SQL Server с параметрами не по умолчанию.
Если на одном сервере устанавливается более одного экземпляра SQL Server, то в настройках экземпляра необходимо задать TCP порт. По умолчанию второй и последующие экземпляры SQL Server устанавливаются без использования TCP-порта.
Обязательные для работы шаблона макросы: DSN, USER (логин), PASSWORD, PORT и INSTANCE. Макро PORT используется для проверки доступности. Если при установке SQL Server было задано пользователькое название экземпляра, то необходимо изменить значение макро INSTANCE с SQLServer на MSSQL\$<имя экземпляра>.
Шаблон достаточно объемный — 67 метрик. Сбор данных осуществляется мастер-метриками с помощью ключа db.odbc.get, который возвращает JSON для последующего разбора зависимыми метриками с использованием функции препроцессинга JSONPath.
Результаты сбора данных с использованием шаблона
Данные счетчиков берутся из системной таблицы dm_os_performance_counter. Большинство метрик являются зависимыми, однако часть данных в таблице представлены в «сыром» виде, поэтому некоторые метрики — вычисляемые.
Доступность сервиса (объекта) проверяется с помощью ключа net.tcp.service, в котором используется имя или адрес, указанные в интерфейса хоста, а также порт, ранее указанный в макро {\$MSSQL. PORT}.
В шаблоне используются правила LLD, которые позволяют обнаруживать базы данных, реплики и их разновидности: зеркалирование и группы доступности, а также локальный и удаленный экземпляры баз, появляющиеся после настройки репликации. По базам данных собирается информация о статусе, размере, транзакциях и журнале транзакций. По репликации и реплицируемым базам — статус и состояние синхронизации.
Правила обнаружения в шаблоне DB MSSQL by ODBC
Пожелания и замечания по шаблонам можно оставлять на форуме Zabbix или на портале технической поддержки.
Разработчикам, желающим поделиться своими шаблонами и получить статус рекомендуемого шаблона на странице интеграций Zabbix, мы предлагаем воспользоваться нашей поваренной книгой о том, как готовить правильный шаблон, которая размещена на обновленном сайте документации.
Хочу поблагодарить всех энтузиастов, участвовавших в сборе данных для разработки и в тестировании описанных шаблонов. Спасибо Вам большое.
Вопрос. Мониторинг Microsoft SQL на данный момент доступен только в Zabbix 5.0?
Ответ. В связи с изменением формата шаблона существующий шаблон в предыдущие версии импортировать невозможно.
Вопрос. Доступны ли все метрики в шаблоне с использованием ODBC-запросов для обычного пользователя или нужно назначать какие-то права на уровне СУБД? И если нужно, то какие именно права?
Ответ. Да, при создании пользователя в экземпляре SQL Server необходимо задать права такого пользователя. Настройка прав описана в readme-файле к шаблону.
Вопрос. Планируется ли сделать шаблоны для WiFi-оборудования UBQUITI?
Ответ. В опубликованных планах таких задач нет. Можно порекомендовать создать соответствующий запрос на портале технической поддержки, и, в зависимости от популярности запроса, Zabbix может добавить такой шаблон.
Вопрос. Поддерживается ли мониторинг нескольких экземпляров Microsoft SQL?
Ответ. Да, если назначить TCP-порт на каждый экземпляр. По умолчанию порт назначается только при инсталляции первого экземпляра SQL Server. Второй и последующие экземпляры по умолчанию недоступны по TCP. Также для каждого экземпляра нужно настроить ODBC, создать отдельный хост в Zabbix и задать макро.
Вопрос. Можно ли мониторить резервные копии баз данных с использованием шаблона Microsoft SQL?
Ответ. Нет, резервные копии баз данных не мониторятся. Желающие поделиться своими идеями мониторинга резервного копирования могут создать запрос ZBXNEXT и мы добавим такую возможность.
Вопрос. Каким образом масштабировать количество ‘опрашивателей’ (pollers) Microsoft SQL?
Ответ. Мы пока не проводили нагрузочное тестирование, поэтому сказать, что количество одновременных запросов ограничено или не ограничено невозможно.
Вопрос. В шаблоне нет триггера, относящегося к отключению блока питания контролируемого устройства. Можно ли автоматизировать создание триггеры на основе метрик, чтобы не делать это вручную?
Ответ. Если такая информация поступает, сенсор должен быть и иметь значение. Если сенсор на контроллере отсутствует, то такую информацию мы получить не сможем. Желающие поделиться своими идеями могут подготовить ZBXNEXT и мы постараемся такую функцию реализовать.
Кроме того, если имеется дискретный сенсор, для него невозможно предусмотреть определенные триггеры, потому что варианты значений не определены. Для дискретных датчиков создаются триггеры изменения значения.
Вопрос. Шаблон для мониторинга Microsoft SQL будет ли как-то отличаться от других шаблонов с использованием perf_counter[]?
Ответ. На share.zabbix.com представлено много различных шаблонов для MS SQL. Да, они будут отличаться. В целом новый шаблон более универсален, чем шаблоны с ключом perf_counter[], потому что рассчитан на работу с экземплярами SQL Server как на Windows, так и на Unix платформах.
(* {{l10n_strings.REQUIRED_FIELD}})
{{l10n_strings.CREATE_NEW_COLLECTION}}*
{{l10n_strings.ADD_COLLECTION_DESCRIPTION}}
{{l10n_strings.COLLECTION_DESCRIPTION}} {{addToCollection.description.length}}/500 {{l10n_strings.TAGS}} {{$item}} {{l10n_strings.PRODUCTS}} {{l10n_strings.DRAG_TEXT}}{{l10n_strings.DRAG_TEXT_HELP}}
{{l10n_strings. LANGUAGE}} {{$select.selected.display}}{{article.content_lang.display}}
{{l10n_strings.AUTHOR}}{{l10n_strings.AUTHOR_TOOLTIP_TEXT}}
{{$select.selected.display}} {{l10n_strings.CREATE_AND_ADD_TO_COLLECTION_MODAL_BUTTON}} {{l10n_strings.CREATE_A_COLLECTION_ERROR}}Фильтр (1) & Уточнить
Цена указана в долларах США без учета налога
Сортировать по: Лучший матч Бестселлеры Новейшие Лучший рейтинг В тренде Цена: от низкой к высокой Цена: от высокой к низкой
16 долларов
567 продаж
Последнее обновление: 05 сен 15
49 долларов
324 Продажи
Последнее обновление: 05 марта 21
$59
19 Продажи
Последнее обновление: 21 декабря 20
12 долларов
93 Продажи
Последнее обновление: 09 апр 21
18 долларов
86 Продажи
Последнее обновление: 08 авг 17
19 долларов
4 Продажи
Последнее обновление: 21 фев 20
49 долларов
28 Продажи
Последнее обновление: 27 июля 20
18 долларов
1. 1 000 продаж
Последнее обновление: 23 июля 21
$39
97,9 тыс. продаж
Последнее обновление: 01 января 22
24 доллара
67 Продажи
Последнее обновление: 06 мая 20
20 долларов
58 Продажи
Последнее обновление: 26 ноя 20
12 долларов
7 Продажи
Последнее обновление: 18 мая 16
12 долларов
379 продаж
Последнее обновление: 23 декабря 21
19 долларов
312 Продажи
Последнее обновление: 27 декабря 20
16 долларов
138 Продажи
Последнее обновление: 03 июля 19
16 долларов
117 Продажи
Последнее обновление: 03 июля 19
12 долларов
36 Продажи
Последнее обновление: 05 авг 21
$58
5 Продажи
Последнее обновление: 28 сен 20
$57
207 Продажи
Последнее обновление: 02 декабря 21
Представьте себе: вы только что запустили новую маркетинговую кампанию и прекрасно себя чувствуете. Электронная книга, которую вы написали, красиво оформлена и полна ценных идей. Ваша социальная армия заблокирована и загружена закусочным контентом, которым можно поделиться. И ваши тщательно сегментированные, персонализированные электронные письма отправлялись без сбоев. Пришло время разлить шампанское и поздравить с еще одним успешным запуском.
Но пока вы готовитесь произнести тост, кто-то из отдела продаж связывается с вами и спрашивает: «Каковы ожидаемые показатели MQL кампании? Как это поможет получить новый доход?» Тишина.Дело не в том, что вы вообще не думали о метриках, но количество доступных данных огромно. Вы просто не знаете, с чего начать — значит, вы этого не сделали.
Когда дело доходит до анализа рентабельности инвестиций в контент, большинство маркетологов терпят неудачу.
По данным Forbes Insights, около половины (50%) руководителей признают, что их маркетинговые усилия, основанные на данных, отстают или разрознены, а еще 22% сообщают, что их маркетинговые усилия, основанные на данных, практически отсутствуют. Но маркетинг, основанный на данных, находится на подъеме, и понимание того, как работает ваш контент, больше не является «приятным иметь», оно имеет решающее значение для вашего успеха.
«Около половины (50 %) руководителей признают, что их маркетинговые усилия, основанные на данных, отстают или разрознены, а еще 22 % сообщают, что их маркетинговые усилия, основанные на данных, практически отсутствуют». — Forbes Insights
Каждая часть контента, которую вы создаете, рассказывает историю о вашей аудитории, нужно просто соединить части вместе, чтобы завершить повествование — нехватка времени (69%) и централизованная панель маркетинговых показателей (66%) — главные препятствия, удерживающие Маркетологи отказываются от последовательного анализа своих данных в соответствии с маркетинговым исследованием Domo, основанным на данных.
Вот почему мы собрали четыре простых шаблона маркетинговых показателей, которые помогут вам проанализировать ваш контент. Загрузите наш бесплатный набор шаблонов маркетинговых показателей и получите информацию, необходимую для повышения эффективности маркетинга.
Возьмите эти четыре простых шаблона маркетинговых показателей, чтобы помочь вам:
Когда дело доходит до анализа вашего контента, ключевое значение имеет единое представление ваших данных на информационной панели.Сделайте первый шаг к тому, чтобы стать настоящим маркетологом, работающим с данными, и создайте панель мониторинга маркетинговых показателей прямо сейчас.
Ключевой показатель эффективности (KPI) — это измеримое значение, которое демонстрирует, насколько эффективно компания достигает ключевых бизнес-целей. Организации используют KPI для оценки своего успеха в достижении целей. Подробнее: Что такое ключевой показатель эффективности (KPI)?
Правильный выбор зависит от вашей отрасли и того, какую часть бизнеса вы хотите отслеживать.Каждый отдел будет использовать разные типы KPI для измерения успеха на основе конкретных бизнес-целей и задач. Узнайте, какие типы ключевых показателей эффективности относятся к вашему отделу, отрасли или роли: Типы KPI.
После того, как вы выбрали ключевые бизнес-показатели, вы захотите отслеживать их в инструменте отчетности в режиме реального времени. Управление ключевыми показателями производительности может осуществляться с помощью программного обеспечения для составления отчетов на панели инструментов, что дает всей вашей организации представление о вашей текущей производительности. Узнайте больше о том, как отслеживать ключевые показатели эффективности в отчете или на панели мониторинга.
В зависимости от вашей отрасли и конкретного отдела, который вы хотите отслеживать, существует несколько типов KPI, которые необходимо отслеживать в вашей компании. Каждый отдел захочет измерить успех на основе конкретных целей и задач. Взгляните на приведенные ниже примеры KPI отдела, чтобы узнать больше о том, который вы должны измерять:
Чтобы быть полезными, ключевые показатели эффективности необходимо отслеживать и сообщать о них; если они изменяются в режиме реального времени, их следует отслеживать в режиме реального времени.Информационные панели KPI — идеальный инструмент для отчетов по отслеживанию производительности, поскольку их можно использовать для визуального отображения производительности предприятия, конкретного отдела или ключевой бизнес-операции.
Вот несколько примеров KPI, демонстрирующих, как вы можете представить ключевые показатели эффективности своей команде на информационных панелях и в отчетах:
Программное обеспечение панели управления KPI позволяет предприятиям превращать данные в аналитику и идеи. Программное обеспечение позволяет организациям вводить свои данные в одну специально разработанную систему или подключать внешние сервисы для более быстрого и точного сбора данных. Этот тип программного обеспечения позволяет предприятиям визуализировать и понимать данные из ряда ключевых показателей эффективности, которые представляют различные области бизнеса, в одном месте. Компании выигрывают от более быстрого и точного сбора данных, мгновенных отчетов о производительности и предупреждений, когда ключевой показатель эффективности превышает или недостигает. Программное обеспечение для панели KPI централизует данные предприятий, упрощая отчетность в реальном времени, чтобы всегда обеспечивать им конкурентное преимущество.
При написании или разработке KPI необходимо учитывать, как этот ключевой показатель эффективности связан с конкретным бизнес-результатом или целью. Ключевые показатели эффективности должны быть адаптированы к вашей бизнес-ситуации и должны быть разработаны, чтобы помочь вам в достижении ваших целей. Выполните следующие действия при написании:
Измерение и мониторинг эффективности бизнеса имеет решающее значение, но сосредоточение внимания на неверных ключевых показателях эффективности может нанести ущерб.Таким образом, они могут быть плохо структурированы или слишком сложны, дороги в получении или для регулярного мониторинга.
Так что же делает показатели эффективности бизнеса «ключевыми» и как владельцу бизнеса, руководителю или менеджеру следует их выбирать? Есть шесть факторов, которые отделяют эффективные ключевые показатели эффективности, создающие ценность, от вредных, снижающих ценность. Следуйте этим шести рекомендациям:
Узнайте больше о передовых методах KPI.
Бизнес-метрика — это количественная мера, которая используется для отслеживания и оценки состояния конкретного бизнес-процесса. В каждой сфере бизнеса есть определенные показатели, которые следует отслеживать: маркетинговые показатели могут включать в себя отслеживание статистики кампаний и программ, в то время как показатели продаж могут учитывать количество новых возможностей и потенциальных клиентов в вашей базе данных, а исполнительные показатели больше фокусируются на общих финансовых показателях. .Подробнее: Бизнес-показатели.
После того, как вы успешно определили правильные ключевые показатели эффективности для своего бизнеса, пришло время начать процесс анализа и получить полезные сведения. Имейте в виду, что ценность анализа KPI зависит от качества данных, а также от навыков аналитика, который занимается комплексом показателей. Здесь мы представляем несколько советов, которые могут помочь в этом процессе:
Создание интерактивной информационной панели: Бизнес-панельные панели чрезвычайно полезны при анализе KPI, поскольку они позволяют визуализировать каждый KPI и взаимодействовать с ним с помощью мощных фильтров и функций, которых нет в традиционном анализе. Во время анализа задавайте конкретные вопросы и углубляйтесь в данные; например, если на вашей панели инструментов отображается карта с наиболее эффективными странами или регионами, вы можете просто щелкнуть, чтобы увеличить масштаб, и отобразятся дополнительные данные, например, какие города, временные рамки или команды несут ответственность за успех. Таким образом, вы включаете дополнительные выводы, которые можно использовать для разработки будущей стратегии.
Сравните разные периоды: Отображение развития или снижения определенного показателя эффективности — это простой шаг, позволяющий определить, улучшается ли общая картина или требуются дополнительные корректировки.Подключившись к этой точке, сравнивая различные периоды, вы также узнаете, как изменилась ваша производительность, и вы сможете легко определить, какие действия вызвали изменения. Например, если вы видите, что количество договоров купли-продажи за последние 3 месяца снизилось по сравнению с тем же периодом прошлого года, вы можете проверить, были ли это вызваны внешними факторами (например, пандемией) или внутренними (ваша команда по продажам уменьшается, и у вас недостаточно ресурсов, чтобы заполнить пустоты).
Внедрение интеллектуальных сигналов тревоги: Оповещения о данных с использованием современных технологий, таких как машинное обучение и искусственный интеллект, анализ ключевых показателей эффективности превратился из ручных вычислений в усовершенствованные алгоритмы, которые автоматически уведомляют пользователя при возникновении аномалии KPI.Прогнозирование следующего ожидаемого значения ряда данных — это функция оповещений о распознавании образов, которая помогает получать более точные прогнозы, в то время как пороговые оповещения активируются, как только целевые значения превышают или отстают от предварительно определенного значения. Интеллект, лежащий в основе этих современных технологий, позволит вам выявлять тенденции в вашем анализе, намного быстрее выявлять возможности и избавляться от утомительных задач ручной работы.
Не сосредотачивайтесь только на цифрах: Числа и программное обеспечение — это инструменты, которые помогут вам повысить уровень производительности, сэкономить драгоценное время и обеспечить актуальность данных и их визуализацию для облегчения понимания. Но числа — это не люди, и вам всегда нужно помнить, какой эффект вызовет ваш анализ на человеческом уровне. Например, если количество потенциальных клиентов уменьшается, вам нужно поставить себя на место своих клиентов и команд, чтобы понять, почему, а не просто слепо следовать целям и задачам. Если вы видите проблемы в своих стратегиях, часто вам нужно скорректировать свой подход, отойти от компьютера и смотреть дальше цифр.
АнализKPI предназначен для улучшения процессов, облегчения повторяющейся работы с помощью современного программного обеспечения KPI и стимулирования более эффективной рабочей среды.Чтобы помочь вам еще больше, мы собрали лучшие практики, которые будут способствовать вашему успеху и обеспечат устойчивое развитие по всем направлениям.
По умолчанию Soda предлагает несколько встроенных метрик, таких как row_count
, которые вы можете использовать для написания тестов. Если встроенные метрики, которые предлагает Soda, не совсем покрывают некоторые из ваших более конкретных или сложных потребностей, вы можете использовать настраиваемые метрики.
Пользовательские метрики , также известные как метрики SQL, позволяют определить собственные метрики, которые можно использовать в тесте в Soda SQL или Soda Cloud; обратитесь к этому примеру ниже.Вы также можете использовать пользовательские метрики, чтобы просто определить SQL-запросы, которые Soda выполняет в качестве тестов во время сканирования, что и делает большинство этих шаблонов.
Узнайте больше об использовании пользовательских метрик в Soda SQL.
Узнайте больше об использовании пользовательских метрик в Soda Cloud.
Приведенные ниже шаблоны предлагают примеры того, как можно определить пользовательские метрики в файле сканирования YAML для извлечения из данных более сложных, настраиваемых, специфичных для бизнеса измерений. Замените значения в двойных фигурных скобках {{ }} собственными соответствующими значениями.
Сравнение количества строк между наборами данных
Поиск и отображение повторяющихся значений
Подтверждение ссылочной целостности идентификаторов между наборами данных
Сравнение значений между наборами данных
Сравнение наборов данных на равенство
Проверка бизнес-логики на уровне строк
Проверка неправильно сопоставленных значений в столбцах
Перейти далее
Пользовательские показатели можно использовать для сравнения количества строк в наборах данных в одном и том же источнике данных.Используйте один из следующих настраиваемых шаблонов метрик в файле сканирования YAML. Замените значения в двойных фигурных скобках {{ }} собственными соответствующими значениями.
✅ Amazon Redshift ✅ GCP Big Query ✅ PostgreSQL ✅ Snowflake
sql_metric:
SQL: |
ВЫБРАТЬ COUNT(*) как other_row_count
ОТ другая_таблица
тесты:
- row_count == other_row_count
Объясните SQL other_row_count
. В этом примере метрики SQL используются для создания новой пользовательской метрики other_row_count
, которую он будет использовать в тесте Soda сразу после этого.Если вы хотите сравнить количество строк между двумя наборами данных и учесть некоторую приемлемую разницу между значениями, вы можете использовать следующий запрос.
✅ Amazon Redshift ✅ GCP Big Query ✅ PostgreSQL ✅ Snowflake
sql_metrics:
- sql: |
с таблицей1 как (
выберите count(*) как table_1_rows из {{ table_1 }}
),
таблица2 как (
выберите count(*) как table_2_rows из {{ table_2 }}
),
промежуточный как (
Выбрать
(выберите table_1_rows из table1) как table_1_rows,
(выберите table_2_rows из table2) как table_2_rows
),
расчёт_разности как (
Выбрать
кейс
когда table_1_rows >= table_2_rows
затем table_1_rows - table_2_rows
когда table_1_rows < table_2_rows
затем table_2_rows - table_1_rows
конец
как row_delta
от промежуточного
)
Выбрать
row_delta
из разницы_расчета
где row_delta > {{ acceptation_threshold }}
Объясните SQL row_delta
. row_delta
, со значением, которое вы установили для accept_threshold
, или с величиной несогласованности количества строк, которую вы готовы принять между наборами данных.Если вы хотите, чтобы значения количества строк были равны, установите пороговое значение 0,0
. Хотя вы можете использовать встроенную метрику duplit_count
для проверки содержимого столбца уникальных идентификаторов, чтобы определить количество повторяющихся значений, следующие шаблоны используют тип запроса failed_rows
и SQL-запросы для выбора и отображения полного содержимого строк, содержащих повторяющиеся значения, чтобы вы могли исследовать проблему.
Если вы используете Soda Cloud и подключили его к своему экземпляру Soda SQL, вы можете использовать настраиваемую метрику для явной отправки ошибочных строк, содержащих повторяющиеся идентификаторы, в Soda Cloud. (Узнайте, как проверить ошибочные строки в Soda Cloud.)
Используйте один из следующих настраиваемых шаблонов метрик в файле сканирования YAML. Замените значения в двойных фигурных скобках {{ }} собственными соответствующими значениями.
✅ Amazon Redshift ✅ GCP Big Query ✅ PostgreSQL ✅ Snowflake
sql_metrics:
- тип: failed_rows
- sql: |
с дублированными_записями как (
Выбрать
{{id_column}}
из {{ таблицы }}
сгруппировать по {{ столбцу }}
имея количество (*)> 1
)
Выбрать
т.*
из {{ таблицы }} t
присоединяйтесь к дубликатам duplicated_records
на t. {{ id_column }} = dup.{{ id_column }}
Объясните SQL Duplicated_records
перечисляет все идентификаторы в столбце id_column
, которые встречаются в столбце более одного раза, и помечает список Duplicated_records
. Duplicated_records
, если они есть, обратно к самому набору данных, чтобы он мог идентифицировать и отправлять ошибочные строки для этих дубликатов идентификаторов в Soda Cloud.Если набор данных не содержит столбца с уникальным идентификатором, как в случае с денормализованным набором данных или набором данных, полученным из нескольких объединений, вам может потребоваться определить уникальность с помощью комбинации столбцов.
В идеале вы должны сгенерировать суррогатный ключ из объединения столбцов в рамках преобразования, например, с помощью этой утилиты dbt Core™, которая генерирует surrogate_key
. Однако, если это невозможно, вы можете использовать следующий шаблон для проверки уникальности с помощью составного ключа.
✅ Amazon Redshift ✅ GCP Big Query ✅ PostgreSQL ✅ Snowflake
sql_metrics:
- тип: failed_rows
- sql: |
с дублированными_записями как (
Выбрать
{{столбец_а}},
{{ столбец_b }}
из {{ таблицы }}
сгруппировать по {{ column_a }}, {{ column_b }}
имея количество (*)> 1
)
Выбрать
с.*
из {{ таблицы }} q
присоединяйтесь к дубликатам duplicated_records
на q.{{ column_a }} = дубликат.{{столбец_а}}
и q.{{ column_b }} = дубликат.{{ column_b }}
Объясните SQL Duplicated_records
перечисляет все идентификаторы, которые встречаются в наборе данных более одного раза, что позволяет использовать шаблон, который утверждает уникальность, используя более одного столбца. Шаблон использует два столбца, но вы можете добавить столько, сколько вам нужно. Если вы добавите больше, обязательно добавьте их в объединение в конце запроса. Duplicated_records
обратно к самому набору данных, чтобы он мог идентифицировать и отправлять ошибочные строки для этих повторяющихся идентификаторов в Soda Cloud. Можно использовать пользовательскую метрику с типом запроса failed_rows
для подтверждения ссылочной целостности между идентификаторами в двух отдельных наборах данных. Например, вы можете захотеть подтвердить, что идентификаторы в столбце родительского набора данных совпадают с идентификаторами в столбце дочернего набора данных.
Иногда транзакционные базы данных с ограничениями первичного и внешнего ключа поддерживают целостность идентификаторов между наборами данных, но если источник данных не применяет ограничения, вы можете определить пользовательскую метрику для сравнения идентификаторов между наборами данных, чтобы выявить любые расхождения.
Если вы используете Soda Cloud и подключили его к своему экземпляру Soda SQL, вы можете использовать настраиваемую метрику для явной отправки строк, содержащих ссылочные несоответствия, в Soda Cloud. (Узнайте, как проверить ошибочные строки в Soda Cloud.)
Используйте следующий шаблон пользовательской метрики в файле сканирования YAML. Замените значения в двойных фигурных скобках {{ }} собственными соответствующими значениями.
✅ Amazon Redshift ✅ GCP Big Query ✅ PostgreSQL ✅ Snowflake
sql_metrics:
- тип: failed_rows
- sql: |
с target_table как (
Выбрать
{{столбец}} как идентификатор
из {{ table_1 }}
),
reference_table как (
Выбрать
{{столбец}} как идентификатор
из {{ table_2 }}
)
Выбрать
*
из {{ table_1 }} как t
левое соединение reference_table p
по отделке (т.id) = обрезка (p.id)
левое соединение target_table tt
при обрезке (tt. id) = обрезке (p.id)
где p.id равен нулю
Объясните SQL
для присоединения родительского набора данных к дочернему набору данных. Если идентификатор существует в дочернем элементе, но отсутствует в родительском, запись в дочернем наборе данных имеет значение null
.Затем еще одно левое соединение
соединяет идентификаторы обратно с дочерним/целевым набором данных, чтобы он мог идентифицировать и отправлять ошибочные строки для несоответствий идентификаторов в Soda Cloud. Чтобы сравнить значения между столбцами в двух разных наборах данных в одном и том же источнике данных, используйте один из следующих настраиваемых шаблонов метрик в файле сканирования YAML. Замените значения в двойных фигурных скобках {{ }} своими собственными соответствующими значениями и обязательно установите тип запроса failed_rows
.
Используйте один из следующих шаблонов пользовательских метрик для конкретного источника данных в файле сканирования YAML. Замените значения в двойных фигурных скобках {{ }} собственными соответствующими значениями.
✅ Amazon Redshift ✅ PostgreSQL ✅ Snowflake
sql_metrics:
- тип: failed_rows
- sql: |
с dataset_join как (
Выбрать
d1.{{ id_column_to_join_tables_on }} как row_id,
д1.{{столбец}} как d1_column,
d2.{{ столбец }} как d2_column,
кейс
когда d1.{{ столбец }} >= d2.{{ столбец }}
затем (d1.{{ столбец }} - d2.{{ столбец }})
/ nullif(abs(d1.{{столбец}}::numeric), 0) * 100
когда d1. {{ столбец }} < d2.{{ столбец }}
затем (d2.{{ столбец }} - d1.{{ столбец }})
/ nullif(abs(d2.{{столбец}}::numeric), 0) * 100
конец
как процент_разницы
из {{ table_1 }} d1
присоединиться к {{ table_2 }} d2
на d1.{{ id_column_to_join_tables_on }} = d2.{{ id_column_to_join_tables_on }}
)
Выбрать
*
из dataset_join
где процент_разницы > {{ порог_принятия}};
Объясните SQL dataset_join
, а результат вычисления percent_difference
. dataset_join
, для которых вычисленное значение Percent_difference
превышает значение, установленное вами для accept_threshold
. Это позволяет установить ограничение допустимой разницы между значениями в столбцах. Если вы хотите, чтобы значения идентификаторов были точно такими же, установите пороговое значение 0.0
.✅ Большой запрос GCP
sql_metrics:
- тип: failed_rows
- sql: |
с dataset_join как (
Выбрать
d1.{{ id_column_to_join_tables_on }} как row_id,
d1.{{ столбец }} как d1_column,
d2.{{ столбец }} как d2_column,
кейс
когда d1.{{ столбец }} >= d2.{{ столбец }}
затем (d1.{{ столбец }} - d2.{{ столбец }})
/ nullif (абс (d1.{{ столбец }}), 0) * 100
когда d1.{{ столбец }} < d2.{{ столбец }}
затем (d2.{{ столбец }} - d1.{{ столбец }})
/ nullif(abs(d2.{{столбец}}), 0) * 100
конец
как процент_разницы
из {{ table_1 }} d1
присоединиться к {{ table_2 }} d2
на d1. {{ id_column_to_join_tables_on }} = d2.{{ id_column_to_join_tables_on }}
)
Выбрать
*
из dataset_join
где процент_разницы > {{ порог_принятия}};
Объясните SQL dataset_join
, а результат вычисления percent_difference
. dataset_join
, для которых вычисленное значение Percent_difference
превышает значение, установленное вами для accept_threshold
. Это позволяет установить ограничение допустимой разницы между значениями в столбцах.Если вы хотите, чтобы значения идентификаторов были одинаковыми, установите пороговое значение 0. 0
. Используйте следующий шаблон, если вы хотите сравнить нечисловые значения, такие как строки. Вы можете использовать этот шаблон для сравнения числовых значений, но его требования к строгому равенству являются более ограничивающими, поскольку он не позволяет вам установить accept_threshold
для приемлемой разницы между значениями.
✅ Amazon Redshift ✅ GCP Big Query ✅ PostgreSQL ✅ Snowflake
sql_metrics:
- тип: failed_rows
- sql: |
с dataset_join как (
Выбрать
д1.{{ id_column_to_join_on }} как row_id,
d1.{{ столбец }} как d1_column,
d2.{{ столбец }} как d2_column,
кейс
когда d1.{{ столбец }} != d2.{{ столбец }}
затем Ложь
иначе Истина
конец
как is_equal
из {{ table_1 }} d1
присоединиться к {{ table_2 }} d2
на d1. {{ id_column_to_join_on }} = d2.{{ id_column_to_join_on }}
)
Выбрать
*
из dataset_join
где is_equal = Ложь
Объясните SQL dataset_join
. is_equal
. dataset_join
, которые не имеют одинаковых значений.Пользовательскую метрику можно использовать для сравнения двух наборов данных в одном и том же источнике данных, чтобы подтвердить их полную идентичность.Этот шаблон идентифицирует строки, которые присутствуют в одном наборе данных, но отсутствуют в другом, и наоборот.
Используйте один из следующих настраиваемых шаблонов показателей для конкретного хранилища в файле сканирования YAML. Замените значения в двойных фигурных скобках {{ }} собственными соответствующими значениями.
✅ Amazon Redshift ✅ PostgreSQL ✅ Snowflake
sql_metrics:
- sql: |
с table_1_not_in_table_2 как (
Выбрать
*
из {{ table_1 }}
Кроме
Выбрать
*
из {{ table_2 }}
)
, таблица_2_не_в_таблице_1 как (
Выбрать
*
из {{ table_2 }}
Кроме
Выбрать
*
из {{ table_1 }}
)
Выбрать
«найдено в таблице 1, но отсутствует в таблице 2» как направленность,
*
из таблицы_1_не_в_таблице_2
союз всех
Выбрать
«найдено в таблице 2, но отсутствует в таблице 1» как направленность,
*
из таблицы_2_не_в_таблице_1
Объясните SQL✅ Большой запрос GCP
sql_metrics:
- sql: |
с table_1_not_in_table_2 как (
Выбрать
*
из {{ table_1 }}
кроме отдельных
Выбрать
*
из {{ table_2 }}
)
, таблица_2_не_в_таблице_1 как (
Выбрать
*
из {{ table_2 }}
кроме отдельных
Выбрать
*
из {{ table_1 }}
)
Выбрать
«найдено в таблице 1, но отсутствует в таблице 2» как направленность,
*
из таблицы_1_не_в_таблице_2
союз всех
Выбрать
«найдено в таблице 2, но отсутствует в таблице 1» как направленность,
*
из таблицы_2_не_в_таблице_1
Объясните SQLИспользуйте один из следующих настраиваемых шаблонов метрик в файле сканирования YAML, чтобы проверить, соответствуют ли данные в записях в вашем источнике данных вашим ожиданиям.
Первый пример — скелетный запрос, в который можно вставлять различные условия; другие предлагают примеры того, как вы можете использовать запрос. Замените значения в двойных фигурных скобках {{ }} собственными соответствующими значениями.
✅ Amazon Redshift ✅ GCP Big Query ✅ PostgreSQL ✅ Snowflake
sql_metrics:
- sql: |
Выбрать
*
из {{ таблицы }}
где нет ({{ condition_logic }})
Объясните SQL Запрос определяет набор данных, в котором нужно найти записи, не соответствующие условиям, заданным в предложении where not
.✅ Amazon Redshift ✅ GCP Big Query ✅ PostgreSQL ✅ Snowflake
sql_metrics:
- sql: |
Выбрать
*
из {{ таблицы }}
где нет(credit_card_amount + wire_transfer = total_order_value)
Объясните SQL Запрос проверяет, соответствует ли сумма двух столбцов в наборе данных значению в третьем столбце, и идентифицирует те строки, которые не совпадают.✅ Amazon Redshift ✅ GCP Big Query ✅ PostgreSQL ✅ Snowflake
sql_metrics:
- sql: |
Выбрать
*
из {{ таблицы }}
где нет(
full_payment_deadline < dateadd(
месяц, количество_рассрочек, дата_первого_платежа
)
)
Объясните SQL Запрос подтверждает, что заказ, оплачиваемый в рассрочку, будет полностью оплачен к установленному сроку, и идентифицирует те строки, которые не соответствуют сроку.Если набор данных не проверяет свое содержимое при вводе, вы можете захотеть подтвердить, что записи правильно сопоставляются со стандартными значениями. Например, когда конечные пользователи вводят значение в произвольной форме для поля страны, вы можете использовать SQL-запрос, чтобы убедиться, что запись правильно сопоставляется с кодом страны ISO, как показано в следующей таблице.
COUNTRY_NAME | country_code |
---|---|
Holland | NL |
Нидерланды | NL |
Великобритания | UK |
Сша | USA |
If вы используете Soda Cloud и подключили его к своему экземпляру Soda SQL, вы можете использовать эти настраиваемые метрики для явной отправки ошибочных строк, содержащих разные значения в любом столбце, в Soda Cloud.(Узнайте, как проверить ошибочные строки в Soda Cloud. )
Используйте один из следующих шаблонов пользовательских метрик для конкретных источников данных в файле сканирования YAML. Замените значения в двойных фигурных скобках {{ }} собственными соответствующими значениями.
✅ Amazon Redshift ✅ PostgreSQL
sql_metrics:
- тип: failed_rows
- sql: |
// этот запрос возвращает ошибочные строки
Выбрать
*
от(
Выбрать
*,
количество ({{ столбец_2 }}) более (
раздел по {{column_1}}
) как number_duplicated_records_per_key
из {{ таблицы }}
) как Mapping_aggregations
где number_duplicated_records_per_key > 1
упорядочить по {{ column_1 }}, {{ column_2 }}
;
// этот запрос возвращает только отдельные ошибочные сопоставления
выбрать отдельный
{{ столбец_1 }},
{{ столбец_2 }}
от(
Выбрать
*,
количество ({{ столбец_2 }}) более (
раздел на {{ column_1 }}
) как number_duplicated_records_per_key
из {{ таблицы }}
) как Mapping_aggregations
где number_duplicated_records_per_key > 1
упорядочить по {{ column_1 }}, {{ column_2 }}
;
Объясните SQL✅ Большой запрос GCP
sql_metrics:
- тип: failed_rows
- sql: |
// этот запрос возвращает ошибочные строки
Выбрать
*,
из {{ таблицы }}
где 1 = 1
квалифицировать count(*) over (partition by {{ column_1 }} order by {{ column_2 }}) > 1;
// этот запрос возвращает только отдельные ошибочные сопоставления
выбрать отдельный
{{ столбец_1 }},
{{ столбец_2 }}
из {{ таблицы }}
где 1 = 1
квалифицировать count(*) over (partition by {{ column_1 }} order by {{ column_2 }}) > 1;
Объясните SQL✅ Снежинка
sql_metrics:
- тип: failed_rows
- sql: |
// этот запрос возвращает ошибочные строки
Выбрать
*
из {{ таблицы }}
квалифицировать count(*) over (разделить на {{ column_1 }} порядок на {{ column_2 }}) > 1
// этот запрос возвращает только отдельные ошибочные сопоставления
Выбрать
отчетливый
{{ столбец_1 }},
{{ столбец_2 }}
из {{ таблицы }}
квалифицировать count(*) over (разделить на {{ column_1 }} порядок на {{ column_2 }}) > 1
Объясните SQLПоследнее изменение 07 января 22
Была ли эта документация полезной?
Поделитесь отзывом на канале #soda-docs в сообществе Soda в Slack.
Помогите улучшить нашу документацию!
(* {{l10n_strings.REQUIRED_FIELD}})
{{l10n_strings.CREATE_NEW_COLLECTION}}*
{{l10n_strings.ADD_COLLECTION_DESCRIPTION}}
{{l10n_strings.COLLECTION_DESCRIPTION}} {{addToCollection.description.length}}/500 {{l10n_strings.TAGS}} {{$элемент}} {{l10n_strings. ПРОДУКТЫ}} {{l10n_strings.DRAG_TEXT}}{{l10n_strings.DRAG_TEXT_HELP}}
{{l10n_strings.LANGUAGE}} {{$выбрать.выбранный.дисплей}}{{article.content_lang.display}}
{{l10n_strings.АВТОР}}{{l10n_strings. AUTHOR_TOOLTIP_TEXT}}
{{$выбрать.выбранный.дисплей}} {{l10n_strings.CREATE_AND_ADD_TO_COLLECTION_MODAL_BUTTON}} {{l10n_strings.CREATE_A_COLLECTION_ERROR}}Prometheus поддерживает шаблоны в аннотациях и метках предупреждений, а также на обслуживаемых страницах консоли. Шаблоны имеют возможность запуска запросы к локальной базе данных, перебирать данные, использовать условные операторы, форматировать данные и т.д.Язык шаблонов Prometheus основан на языке Go. система шаблонов.
Первичной структурой данных для работы с данными временных рядов является выборка, определяемая как:
тип образца структуры {
Карта ярлыков[строка]строка
Значение float64
}
Имя метрики выборки закодировано в специальной метке __name__
в карте Labels
.
[]sample
означает список образцов.
interface{}
в Go похож на указатель void в C.
В дополнение к стандартному функции, предоставляемые Go шаблонов, Prometheus предоставляет функции для упрощения обработки запросов результаты в шаблонах.
Если функции используются в конвейере, значение конвейера передается в качестве последнего аргумента.
Имя | Аргументы | Возвращает | Примечания |
---|---|---|---|
запрос | строка запроса | []образец | Запрашивает базу данных, не поддерживает возврат векторов диапазона. |
первый | []образец | образец | Эквивалентно индексу a 0 |
этикетка | Этикетка, образец | строка | Эквивалент образца индекса . Этикетка ярлыков |
значение | образец | поплавок64 | Эквивалент образца . Значение |
сортировка по метке | Этикетка, []образцы | []образец | Сортирует образцы по заданной метке.Стабильный. |
first
, label
и value
предназначены для упрощения использования результатов запроса в конвейерах.
Имя | Аргументы | Возвращает | Примечания |
---|---|---|---|
гуманизировать | номер или строка | строка | Преобразует число в более читаемый формат, используя метрические префиксы. |
гуманизация1024 | номер или строка | строка | Аналогично очеловечить , но в качестве основы используется 1024, а не 1000. |
HumanizeDuration | номер или строка | строка | Преобразует продолжительность в секундах в более удобочитаемый формат. |
HumanizePercentage | номер или строка | строка | Преобразует значение отношения в дробную часть от 100. |
гуманизацияTimestamp | номер или строка | строка | Преобразует метку времени Unix в секундах в более читаемый формат. |
Функции гуманизации предназначены для получения приемлемого результата для потребления людьми, и не гарантируется, что они вернут те же результаты между Prometheus версии.
Имя | Аргументы | Возвращает | Примечания |
---|---|---|---|
название | строка | строка | strings.Title, делает первый символ каждого слова заглавным. |
до верхнего | строка | строка | струны.ToUpper переводит все символы в верхний регистр. |
до нижнего | строка | строка | strings. ToLower, преобразует все символы в нижний регистр. |
совпадение | узор, текст | логическое значение | regexp.MatchString Проверяет соответствие незакрепленного регулярного выражения. |
заменить все | узор, замена, текст | строка | Regexp.ReplaceAllString Подстановка регулярных выражений, незакрепленная. |
Графлинк | выражение | строка | Возвращает путь к представлению графика в обозревателе выражений для выражения. |
Ссылка на стол | выражение | строка | Возвращает путь к табличному ("Таблица") представлению в обозревателе выражений для выражения. |
parseDuration | строка | поплавок | Разбирает строку длительности, например "1h", на число секунд, которое она представляет. |
Имя | Аргументы | Возвращает | Примечания |
---|---|---|---|
аргументы | []интерфейс{} | карта[строка]интерфейс{} | Это преобразует список объектов в карту с ключами arg0, arg1 и т. д. Это предназначено для того, чтобы разрешить передачу нескольких аргументов в шаблоны. |
тмпл | Строка, []интерфейс{} | ничего | Аналогичен встроенному шаблону , но допускает использование нелитералов в качестве имени шаблона.Обратите внимание, что результат считается безопасным и не будет автоматически экранирован. Доступно только на консолях. |
безопасный HTML | строка | строка | Помечает строку как HTML, не требующую автоматического экранирования. |
Каждый из типов шаблонов предоставляет различную информацию, которую можно использовать для параметризовать шаблоны и иметь несколько других отличий.
.Value
, .Labels
, .ExternalLabels
и .ExternalURL
содержат значение предупреждения, предупреждение
метки, глобально настроенные внешние метки и внешний URL-адрес (настроенный с помощью --web. external-url
) соответственно. Они есть
также представлены как переменные $value
, $labels
, $externalLabels
и $externalURL
для
удобство.
Консоли выставлены на /consoles/
и получены из каталога, на который указывает
по сети .флаг console.templates
.
Шаблоны консоли отображаются с
html/шаблон, который предоставляет
автоматическое экранирование. Для обхода автоэкранирования используйте функции сейфа*
.,
параметры URL доступны в виде карты в .Params
. Чтобы получить доступ к нескольким URL
параметры с тем же именем, .RawParams
— это карта значений списка для каждого
параметр. Путь URL доступен в .Path
, за исключением /consoles/
префикс. Глобально настроенные внешние метки доступны как .Внешние метки
. Есть также удобные переменные для всех четырех: $rawParams
, $params
, $path
и $externalLabels
.
также имеют доступ ко всем шаблонам, определенным с помощью {{define
"templateName"}}...{{end}}
найдено в файлах *.lib
в каталоге, на который указывает
флагом -web.console.libraries
. Поскольку это общее пространство имен, будьте осторожны
во избежание конфликтов с другими пользователями. Имена шаблонов начинаются с prom
, _prom
и __
зарезервированы для использования Prometheus, как и функции
вышеперечисленное.
Исходный код этой документации является открытым. Пожалуйста, помогите улучшить его, зарегистрировав проблемы или запросы на включение.
.