Files
help365/platform/install-loki.html
2025-05-27 21:32:35 +04:00

423 lines
50 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en">
<head>
<title>Install Loki</title>
<meta name="generator" content="Help+Manual" />
<meta name="keywords" content="" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="Loki is an open platform for collecting, indexing, and storing logs. It enables debugging and problem detection in the system based on log data analysis and monitoring." />
<meta name="picture" content="" />
<meta property="og:type" content="website" />
<meta property="og:title" content="Full documentation for BRIX365 platform. Low-code developer guide. User guide. Admin guide. Developer guide." />
<meta property="og:url" content="https://brix365.com/en/help" />
<meta property="og:image" content="" />
<link rel="icon" href="favicon.png" type="image/png" />
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap" rel="stylesheet" />
<link rel="stylesheet" href="./jquery-ui.min.css" />
<link rel="stylesheet" href="default.css" />
<link rel="stylesheet" href="./search-yandex.css" />
<link rel="stylesheet" href="./article.css" />
<link rel="stylesheet" href="./glossary.css" />
<link rel="stylesheet" href="./theme.css" />
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="helpman_settings.js"></script>
<script type="text/javascript" src="helpman_topicinit.js"></script>
<script type="text/javascript" src="highlight.js"></script>
<script type="text/javascript">
$(document).ready(function(){highlight();});
</script>
</head>
<body>
<script>!function(e,t,c,n,r,a,m){e.ym=e.ym||function(){(e.ym.a=e.ym.a||[]).push(arguments)},e.ym.l=1*new Date;for(var s=0;s<document.scripts.length;s++)if(document.scripts[s].src===n)return;a=t.createElement(c),m=t.getElementsByTagName(c)[0],a.async=1,a.src=n,m.parentNode.insertBefore(a,m)}(window,document,"script","https://mc.yandex.ru/metrika/tag.js"),ym(83179930,"init",{clickmap:!0,trackLinks:!0,accurateTrackBounce:!0,webvisor:!0})</script><noscript><div><img alt=""src=https://mc.yandex.ru/watch/83179930 style=position:absolute;left:-9999px></div></noscript>
<header class="header elma-365">
<div class="container">
<a class="header__logo" href="https://brix365.com/en/help">
<img src="./logo-en.svg" alt="header logo">
</a>
<!-- <div class="hero__search-form" id="search-panel">
<form class="search-form" onsubmit="ym(83180416,'reachGoal','poisk')">
<label class="search-form__label">
<span id="reset-search" class="search__icon"></span>
<input class="search-form__input" type="text">
</label>
<input class="search-form__submit" type="submit" value="Submit">
</form>
</div> -->
<div class="hero__search-form" id="search-panel"> <form class="search-form"> <label class="search-form__label"> <span id="reset-search" class="search__icon"></span> <input class="search-form__input" type="text"> </label> <input class="search-form__submit" type="submit" value="Submit"> </form> </div>
<div class="hero__search">
<a href="#" id="search-icon" class="hero__search-icon">
<img src="search-icon-white.svg" alt="search string">
</a>
<a href="#" id="side-menu-icon" class="hero__side-icon">
<img src="side_menu.svg" alt="side menu">
</a>
</div>
<div class="header__navi">
<ul class="header__list"><li><span class="solution-select"><span class="solution-select__selected"></span><svg width="7" height="4" viewBox="0 0 7 4" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1L3.5 3.5L6 1" stroke="white" stroke-linecap="round" stroke-linejoin="round"/></svg><ul class="solution-select__list"><li><a class="project-link" href="https://brix365.com/en/help/platform/get-trial.html">Platform</a></li><li><a class="project-link" href="https://brix365.com/en/help/ecm/ecm-functions.html">ECM</a></li><li><a class="project-link" href="https://brix365.com/en/help/crm/crm_overview.html">CRM</a></li><li><a class="project-link" href="https://brix365.com/en/help/service/service-functions.html">Service</a></li><li><a class="project-link" href="https://brix365.com/en/help/projects/projects-functions.html">Projects</a></li><li><a class="project-link" href="https://brix365.com/en/help/business_solutions/-elma365-store.html">Business Solutions</a></li></ul></span></li><li><a href="https://api.brix365.com/en/" target="_blank">API</a></li><li><a href="https://tssdk.brix365.com/" target="_blank">SDK</a></li></ul>
</div>
</div>
</header>
<main class="main container">
<aside class="sidebar" id="sidebar">
<div class="sidebar__header">
<a class="header__logo" href="https://brix365.com/en/help">
<img src="./logo-light-en.svg">
</a>
<span class="sidebar__close elma-365-close" id="close"></span>
</div>
<div class="sidebar__wrapper" id="side-menu">
</div>
</aside>
<article class="article" id="article">
<div class="article-inner">
<div class="content">
<header class="article__header">
<div class="article__bread" style="display:flex; gap:10px;">
<span id="subcategory" class="search-res__item-category search-res__item-category_subcategory subcategory article__badge"></span>
<div class="topic__breadcrumbs">
<p><a href="elma365-on-premises.html">BRIX On-Premises</a> &gt; <a href="elma365-enterprise.html">BRIX On-Premises Enterprise</a> &gt; Install add-on components for BRIX / Install Loki</p>
</div>
</div>
<div class="topic__title"><h1 class="p_Heading1"><span class="f_Heading1">Install Loki</span></h1>
</div>
</header>
<section class="article__content">
<div class="scroll-top-inner">
<a href="#h1-article" class="scroll-top"></a>
</div>
<!-- Placeholder for topic body. -->
<p style="line-height: 1.28; margin: 0 0 11px 0;">Loki is an open platform for collecting, indexing, and storing logs. It enables debugging and problem detection in the system based on log data analysis and monitoring.</p>
<p style="text-align: justify; line-height: 1.28; margin: 0 0 11px 0;">Before installing Loki, configure the <a href="install-monitoring-tools.html" class="topiclink">monitoring tools</a>.</p>
<p style="text-align: justify; line-height: 1.28; margin: 0 0 11px 0;">This article describes how to:</p>
<ul style="list-style-type:disc">
<li style="text-align: justify; line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;">Install the Loki service using a chart. This is a universal option that can be applied to any Kubernetes platform in use.</li><li style="text-align: justify; line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;"><a href="install-loki.html#loki-module" class="topiclink">Configure the Loki module built into the Deckhouse Kubernetes Platform</a>.</li></ul>
<p style="text-align: justify; line-height: 1.28; margin: 0 0 11px 0;">The installation of Loki consists of five steps:</p>
<ol style="list-style-type:decimal">
<li value="1" class="p_Normal"><a href="install-loki.html#download-helm-chart-and-config-file" class="topiclink">Download the Helm chart and the configuration file</a>.</li><li value="2" class="p_Normal"><a href="install-loki.html#create-bucket" class="topiclink">Create buckets in MinIO</a>.</li><li value="3" class="p_Normal"><a href="install-loki.html#filling-out-configuration-file" class="topiclink">Fill in the configuration file</a>.</li><li value="4" class="p_Normal"><a href="install-loki.html#install-chart-loki" class="topiclink">Install the Loki chart using Helm in the Kubernetes cluster</a>.</li><li value="5" class="p_Normal"><a href="install-loki.html#configure-connection" class="topiclink">Configure the connection to Loki in Grafana data sources</a>.</li></ol>
<p class="p_CodeExample" style="page-break-inside: avoid;"><span class="f_CodeExample">Начало&nbsp;внимание</span></p>
<p style="line-height: 1.28; margin: 0 0 11px 0;"><span style="background-color: #ffffff;">When installing Loki +&nbsp;<a href="install-tempo.html" class="topiclink">Tempo</a>, start with the Loki addon. This allows preserving cross-linking settings, as they are initially configured in the Datasource settings.</span></p>
<p class="p_CodeExample" style="page-break-inside: avoid;"><span class="f_CodeExample">Конец&nbsp;внимание</span></p>
<h2 class="p_Heading2"><a id="download-helm-chart-and-config-file" class="hmanchor"></a><span class="f_Heading2">Step 1: Download the Helm chart and the configuration file</span></h2>
<p style="line-height: 1.28; margin: 0 0 11px 0;">To install over the internet, obtain the configuration file <code><b>values-loki.yaml</b></code> by executing the command:</p>
<p class="p_CodeExample" style="page-break-inside: avoid;"><span class="f_CodeExample">helm&nbsp;repo&nbsp;add&nbsp;elma365&nbsp;https://charts.elma365.tech</span><br />
<span class="f_CodeExample">helm&nbsp;repo&nbsp;update</span><br />
<span class="f_CodeExample">helm&nbsp;show&nbsp;values&nbsp;elma365/loki&nbsp;&gt;&nbsp;values-loki.yaml</span></p>
<p class="p_Normal"><a class="dropdown-toggle" style="font-style: normal; font-weight: normal; color: #000000; background-color: transparent; text-decoration: none;" href="javascript:HMToggle('toggle','TOGGLE0186A1')">Getting configuration file for installation in a closed environment without internet access,</a></p>
<div id="TOGGLE0186A1" class="dropdown-toggle-body" style="text-align: left; text-indent: 0; line-height: 1.28; padding: 0 0 0 0; margin: 0 0 11px 0;"><table style="border:none; border-spacing:0;">
<tr>
<td style="vertical-align:top; padding:0; border:none"><ol style="list-style-type:decimal">
<li value="1" style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;">On a computer with internet access, download the archive of the latest version of the Loki chart from the BRIX repository using the command:</li></ol>
<p class="p_CodeExample" style="white-space: normal; page-break-inside: avoid;"><span class="f_CodeExample">helm repo add elma365 https://charts.elma365.tech</span><br />
<span class="f_CodeExample">helm repo update</span><br />
<span class="f_CodeExample">helm pull elma365/loki</span></p>
<ol style="list-style-type:decimal">
<li value="2" class="p_Normal">Copy the obtained <code><b>loki-X.Y.Z.tgz</b></code> chart archive to the server where the installation will take place.</li><li value="3" class="p_Normal">Unpack the chart and copy the default configuration file <code><b>values.yaml</b></code> to <code><b>values- loki.yaml</b></code> <span style="font-weight: bold; color: #333333; background-color: #ffffff;">.</span></li></ol>
<p class="p_CodeExample" style="page-break-inside: avoid;"><span class="f_CodeExample">tar&nbsp;-xf&nbsp;loki-X.Y.Z.tgz</span><br />
<span class="f_CodeExample">cp&nbsp;loki/values.yaml&nbsp;values-loki.yaml</span></p>
</td>
</tr>
</table>
</div>
<h2 class="p_Heading2"><a id="create-bucket" class="hmanchor"></a><span class="f_Heading2">Step 2: Create buckets in MinIO</span></h2>
<p class="p_Normal">1. Create <code><b>alias</b></code> for MinIO:</p>
<p class="p_CodeExample" style="page-break-inside: avoid;"><span class="f_CodeExample">mc&nbsp;alias&nbsp;set&nbsp;my_alias&nbsp;http://minio.local&nbsp;accessKey&nbsp;secretKey</span></p>
<p class="p_Normal">2. Create buckets with the names <code><b>admins</b></code>, <code><b>chunks</b></code> and <code><b>rules</b></code>:</p>
<p class="p_CodeExample" style="page-break-inside: avoid;"><span class="f_CodeExample">mc&nbsp;mb&nbsp;-p&nbsp;my_alias/admin&nbsp;--region=ru-central-1</span><br />
<span class="f_CodeExample">mc&nbsp;mb&nbsp;-p&nbsp;my_alias/chunks&nbsp;--region=ru-central-1</span><br />
<span class="f_CodeExample">mc&nbsp;mb&nbsp;-p&nbsp;my_alias/rules&nbsp;--region=ru-central-1</span></p>
<h2 class="p_Heading2"><a id="filling-out-configuration-file" class="hmanchor"></a><span class="f_Heading2">Step 3: Fill in the configuration file</span></h2>
<p class="p_Normal"><a class="dropdown-toggle" style="font-style: normal; font-weight: normal; color: #000000; background-color: transparent; text-decoration: none;" href="javascript:HMToggle('toggle','TOGGLE0186A2')">Fill in the values-loki.yaml configuration file to install Loki</a></p>
<div id="TOGGLE0186A2" class="dropdown-toggle-body" style="text-align: left; text-indent: 0; background: #fcfcfc; padding: 0 0 0 0; margin: 0 0 0 0;"><table style="border:none; border-spacing:0;">
<tr>
<td style="vertical-align:top; padding:0; border:none"><p class="p_CodeExample" style="white-space: normal; page-break-inside: avoid;"><span class="f_CodeExample"> </span><span class="f_CodeExample">loki:</span><br />
<span class="f_CodeExample"># -- Deploy mode allows specifying the Loki deployment mode</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">deploymentMode:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">SimpleScalable</span><br />
<span class="f_CodeExample"># -- COnfiguration so start Enterprise Loki</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">enterprise:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">enabled:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">false</span><br />
<span class="f_CodeExample"># -- Use the GEL gateway if; if false, use the nginx gateway by default</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">gelGateway:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">false</span><br />
<span class="f_CodeExample"># -- enable caching of chunks based on memcached</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">chunksCache:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">enabled:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">false</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">loki:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample"># -- enable authentication</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">auth_enabled:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">false</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample"># -- storage configuration</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">storage:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">bucketNames:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">chunks:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">chunks</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">ruler:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">ruler</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">admin:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">admin</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">type:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">s3</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">s3:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">s3:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">null</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">endpoint:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">minio.local:9000</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">region:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">ru-central-1</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">secretAccessKey:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">secretAccessKey</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">accessKeyId:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">accessKeyId</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">signatureVersion:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">null</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">s3ForcePathStyle:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">true</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">insecure:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">true</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">http_config:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">{}</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample"># -- additional compactor configuration</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">compactor:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">delete_request_store:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">s3</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">compaction_interval:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">10m</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">retention_enabled:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">true</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">retention_delete_delay:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">2h</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">retention_delete_worker_count:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">150</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">working_directory:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">/var/loki/chunks</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample"># -- schema settings</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">schemaConfig:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">configs:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">-</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">from:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">&quot;2024-04-01&quot;</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">index:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">period:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">24h</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">prefix:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">index_</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">object_store:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">s3</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">schema:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">v13</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; &nbsp; </span><span class="f_CodeExample">store:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">tsdb</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">useTestSchema:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">false</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample"># -- limits configuration</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">limits_config:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">retention_period:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">744h</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">#</span><span class="f_CodeExample" style="font-weight: bold;">default</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">744h</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">per_stream_rate_limit:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">512M</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">per_stream_rate_limit_burst:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">1024M</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">commonConfig:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">replication_factor:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">1</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample"># -- write module configuration</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">write:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">replicas:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">1</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">autoscaling:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">enabled:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">false</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">minReplicas:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">2</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">maxReplicas:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">6</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample"># -- read module configuration</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">read:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">replicas:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">1</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">autoscaling:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">enabled:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">false</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">minReplicas:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">2</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">maxReplicas:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">6</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample"># -- backend module configuration</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">backend:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">replicas:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">1</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">autoscaling:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">enabled:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">false</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">minReplicas:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">2</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">maxReplicas:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">6</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample"># -- gateway module configuration</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">gateway:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">enabled:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">true</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">replicas:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">1</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">verboseLogging:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">true</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">autoscaling:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">enabled:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">false</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">minReplicas:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">1</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">maxReplicas:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">3</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample"># -- Section for setting up additional Helm test</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">test:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">enabled:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">false</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample"># Loki canary</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">lokiCanary:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">enabled:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">false</span><br />
<span class="f_CodeExample" style="font-weight: bold;">&nbsp;</span><br />
<span class="f_CodeExample"># -- promtail settings</span><br />
<span class="f_CodeExample">promtail:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">daemonset:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample"># -- Deploys Promtail as DaemonSet</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">enabled:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">true</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">autoscaling:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">enabled:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">false</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">deployment:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample"># -- Deploys Promtail as Deployment</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">enabled:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">false</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">replicaCount:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">1</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">autoscaling:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">enabled:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">false</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">minReplicas:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">1</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">maxReplicas:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">10</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample"># -- Promtail configuration</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">config:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">enabled:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample" style="font-weight: bold;">true</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">serverPort:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">3101</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">clients:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">-</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">url:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">http://loki-gateway/loki/api/v1/push</span></p>
</td>
</tr>
</table>
</div>
<p class="p_Normal"><a class="dropdown-toggle" style="font-style: normal; font-weight: normal; color: #000000; background-color: transparent; text-decoration: none;" href="javascript:HMToggle('toggle','TOGGLE0186A3')">Filling in connection parameters to a private registry for installation in a closed environment without internet access</a></p>
<div id="TOGGLE0186A3" class="dropdown-toggle-body" style="text-align: left; text-indent: 0; line-height: 1.80; padding: 0 0 0 0; margin: 0 0 0 0;"><table style="border:none; border-spacing:0;">
<tr>
<td style="vertical-align:top; padding:0; border:none"><p class="p_Normal">&nbsp;<br />
To connect to a private registry, follow these steps:</p>
<ol style="list-style-type:decimal">
<li value="1" class="p_Normal">Download the BRIX images and load them into the local image registry. Read more about this in <a href="downloadin-images-elma365.html" class="topiclink">Download BRIX images</a>.</li></ol>
<ol style="list-style-type:decimal" start="2">
<li value="2" class="p_Normal">Set the address and path for the parameter <code><b>image.repository</b></code>.</li></ol>
<ol style="list-style-type:decimal" start="3">
<li value="3" class="p_Normal">Specify the name of the secret with access rights to the private registry in the parameter <code><b>image.pullSecrets</b></code>. The secret must be created manually and encoded in Base64.</li></ol>
<p class="p_CodeExample" style="white-space: normal; page-break-inside: avoid;"><span class="f_CodeExample">loki:</span><br />
<span class="f_CodeExample"># parameters for connecting to the private registry</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">global:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">image:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; &nbsp; </span><span class="f_CodeExample">registry:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">null</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">imagePullSecrets:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">[]</span><span class="f_CodeExample" style="color: #ffffff;"> &nbsp;</span><br />
<span class="f_CodeExample" style="color: #ffffff;">&nbsp;</span><br />
<span class="f_CodeExample">promtail:</span><br />
<span class="f_CodeExample"># parameters for connecting to the private registry</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">global:</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">imageRegistry:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">&quot;&quot;</span><br />
<span class="f_CodeExample" style="color: #ffffff;"> &nbsp; </span><span class="f_CodeExample">imagePullSecrets:</span><span class="f_CodeExample" style="color: #ffffff;"> </span><span class="f_CodeExample">[]</span></p>
</td>
</tr>
</table>
</div>
<h2 class="p_Heading2"><a id="install-chart-loki" class="hmanchor"></a><span class="f_Heading2">Step 4: Install the Loki chart using Helm in the Kubernetes cluster</span></h2>
<p style="line-height: 1.28; page-break-inside: avoid; page-break-after: avoid; margin: 3px 0 0 0;">Execute the installation of the <span style="font-weight: bold;">Loki</span> chart in <code><b>namespace monitoring</b></code><span style="color: #333333;">.</span></p>
<p style="line-height: 1.20; background: #ffffff; margin: 10px 0 0 0;">For online installation via the internet:</p>
<p class="p_CodeExample" style="page-break-inside: avoid;"><span class="f_CodeExample">helm&nbsp;upgrade&nbsp;--install&nbsp;-n&nbsp;monitoring&nbsp;loki&nbsp;elma365/loki&nbsp;-f&nbsp;values-loki.yaml</span></p>
<p style="line-height: 1.0; white-space: nowrap; page-break-inside: avoid;">For&nbsp;offline&nbsp;installation&nbsp;without&nbsp;internet&nbsp;access,&nbsp;navigate&nbsp;to&nbsp;the&nbsp;directory&nbsp;with&nbsp;the&nbsp;downloaded&nbsp;chart&nbsp;and&nbsp;execute&nbsp;the&nbsp;command:</p>
<p class="p_CodeExample" style="page-break-inside: avoid;"><span class="f_CodeExample">helm&nbsp;upgrade&nbsp;--install&nbsp;loki&nbsp;./loki&nbsp;-f&nbsp;values-loki.yaml&nbsp;-n&nbsp;monitoring</span></p>
<h2 class="p_Heading2"><a id="configure-connection" class="hmanchor"></a><span class="f_Heading2">Step 5: Configure the connection to Loki in Grafana data sources</span></h2>
<p style="line-height: 1.28; margin: 0 0 11px 0;">The Loki data source is automatically added to Grafana during installation. You can check it in in the administrators menu: <span style="font-weight: bold;">Home &gt; Administration &gt; Data source</span> or <span style="font-weight: bold;">Home &gt; Connections &gt; Data sources</span>.</p>
<p style="line-height: 1.28; margin: 0 0 11px 0;">To add the source manually, in the <span style="font-weight: bold;">URL</span> field, specify <span style="font-weight: bold;">http://loki-gateway</span></p>
<p class="p_Normal"><img alt="install-loki-1" title="install-loki-1" width="586" height="381" style="margin:0;width:586px;height:381px;border:none" src="install-loki-1.png"/></p>
<p style="line-height: 1.28; margin: 0 0 11px 0;"><span style="background-color: #ffffff;">Example of viewing logs for&nbsp;</span><code><b>mongodb ({app="mongodb"} |= "error" != "timeout")</b></code><span style="background-color: #fffdf6;">:</span><br />
<img alt="install-loki-2" title="install-loki-2" width="1740" height="742" style="margin:0;width:1740px;height:742px;border:none" src="install-loki-2.png"/></p>
<h2 class="p_Heading2"><a id="loki-module" class="hmanchor"></a><span class="f_Heading2">Configure Loki in the Deckhouse platform</span></h2>
<p style="line-height: 1.28; margin: 0 0 11px 0;">If you use the Deckhouse platform, there are two ways to install Loki:</p>
<ul style="list-style-type:disc">
<li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;">Install the <span style="font-weight: bold;">Loki</span> chart into the Kubernetes cluster <a href="install-loki.html#download-helm-chart-and-config-file" class="topiclink">following the description above</a>.</li><li style="line-height: 1.28; margin-top: 0; margin-right: 0; margin-bottom: 11px;">Enable the <span style="font-weight: bold;">Loki</span> module built into Deckhouse. When using this module, you can view the logs from all pods of the cluster in Grafana.</li></ul>
<p style="line-height: 1.28; margin: 0 0 11px 0;">To enable the <span style="font-weight: bold;">Loki</span> module in the Deckhouse platform, use the following code:</p>
<p class="p_CodeExample" style="white-space: normal; page-break-inside: avoid;"><span class="f_CodeExample">kubectl apply -f - &lt;&lt;EOF</span><br />
<span class="f_CodeExample"># Configure log collection from all pods</span><br />
<span class="f_CodeExample">apiVersion: deckhouse.io/v1alpha1</span><br />
<span class="f_CodeExample">kind: ClusterLoggingConfig</span><br />
<span class="f_CodeExample">metadata:</span><br />
<span class="f_CodeExample"> &nbsp;name: all-logs</span><br />
<span class="f_CodeExample">spec:</span><br />
<span class="f_CodeExample"> &nbsp;type: KubernetesPods</span><br />
<span class="f_CodeExample"> &nbsp;destinationRefs:</span><br />
<span class="f_CodeExample"> &nbsp;- d8-loki</span><br />
<span class="f_CodeExample">---</span><br />
<span class="f_CodeExample"># Enable the Loki module and configure data storage settings</span><br />
<span class="f_CodeExample">apiVersion: deckhouse.io/v1alpha1</span><br />
<span class="f_CodeExample">kind: ModuleConfig</span><br />
<span class="f_CodeExample">metadata:</span><br />
<span class="f_CodeExample"> &nbsp;name: loki</span><br />
<span class="f_CodeExample">spec:</span><br />
<span class="f_CodeExample"> &nbsp;settings:</span><br />
<span class="f_CodeExample"> &nbsp; &nbsp;storageClass: localpath-deckhouse-system</span><br />
<span class="f_CodeExample"> &nbsp; &nbsp;diskSizeGigabytes: 30</span><br />
<span class="f_CodeExample"> &nbsp; &nbsp;retentionPeriodHours: 168</span><br />
<span class="f_CodeExample"> &nbsp;enabled: true</span><br />
<span class="f_CodeExample"> &nbsp;version: 1</span><br />
<span class="f_CodeExample">---</span><br />
<span class="f_CodeExample"># Enable the log-shipper module</span><br />
<span class="f_CodeExample">apiVersion: deckhouse.io/v1alpha1</span><br />
<span class="f_CodeExample">kind: ModuleConfig</span><br />
<span class="f_CodeExample">metadata:</span><br />
<span class="f_CodeExample"> &nbsp;name: log-shipper</span><br />
<span class="f_CodeExample">spec:</span><br />
<span class="f_CodeExample"> &nbsp;version: 1</span><br />
<span class="f_CodeExample"> &nbsp;enabled: true</span><br />
<span class="f_CodeExample">EOF</span></p>
<div class="bottom-nav">
<a id="prev-link" class="topic__navi_prev" href="install-cert-manager.html">
<span class="bottom-nav__arrow bottom-nav__arrow--prev"></span> <span
class="bottom-nav__link">install-cert-manager.html</span>
</a>
<a id="next-link" class="topic__navi_next" href="install-mimir.html">
<span class="bottom-nav__link">install-mimir.html</span> <span
class="bottom-nav__arrow bottom-nav__arrow--next"></span>
</a>
</div>
<!-- добавляет на страницу строку блок Была ли статья полезной? -->
<div class="feedback" id="feedback"><div class="feedback-help"><span><b>Was this helpful?</b></span><form action="" method="POST" class="feedback-form" id="feedback-form"><div class="feedback__popup feedback__popup-response" id="feedback__popup_thx" style="display: none;">Thanks for your feedback!</div><div class="feedback__popup" id="feedback__popup_why" style="display: none;"><div class="feedback__popup-header">Please specify why:</div><input type="radio" name="category" id="bad_recommendation" value="bad_recommendation"><label for="bad_recommendation">Recommendations did not help me</label><input type="radio" name="category" id="difficult_text" value="difficult_text"><label for="difficult_text">Article is hard to understand</label><input type="radio" name="category" id="no_answer" value="no_answer"><label for="no_answer">Didn`t answer my question</label><input type="radio" name="category" id="bad_header" value="bad_header"><label for="bad_header">Content does not match the topic</label><input type="radio" name="category" id="other_reason" value="other_reason"><label for="other_reason">Other</label></div><div class="feedback__popup" id="feedback__popup-other" style="display: none;"><div class="feedback__popup-header">How we can improve it?</div><textarea class="feedback__textarea" name="other" id=""></textarea><input type="submit" class="feedback__other-btn" value="Submit"></div><div class="feedback-form__btn-group"><input type="radio" name="useful" id="feedback__useful_yes" value="true"><label for="feedback__useful_yes"><img src="like.svg" class="small-img" alt="like"><spanclass="feedback-form__btn-group_yes-btn">Yes</spanclass="feedback-form__btn-group_yes-btn"></label><input type="radio" name="useful" id="feedback__useful_no" value="false"><label for="feedback__useful_no"><img src="dislike.svg" class="small-img" alt="dislike"><spanclass="feedback-form__btn-group_no-btn">No</spanclass="feedback-form__btn-group_no-btn"></label></div><select name="category"><option disabled="">Please specify why</option><option value="bad_recommendation" selected="">Recommendations did not help me</option><option value="difficult_text">Article is hard to understand</option><option value="no_answer">Didn`t answer my question</option><option value="bad_header">Content does not match the topic</option><option value="other_reason">Other</option></select><input type="submit"></form></div><div class="found_typo"><p style="margin: 0px; margin-top: 16px !important;"><span><b>Found a typo?</b></span> Select it and press <i>Ctrl+Enter</i> to send us feedback</p></div></div>
</section>
</div>
<aside class="article__sidebar" style="display:none">
<input type="checkbox" />
<div class="article__arrow"></div>
<div class="table-of-contents elma365-right" id="toc2Content">
<h3 class="h3-toc">In this topic</h3>
<nav id="toc2"></nav>
</div>
</aside>
</div>
</article>
</main>
<footer class="footer">
<div class="footer-container">
<div class="footer-mobile">
<ul class="footer-mobile__list"><li><a href="https://brix365.com/en/" target="_blank">BRIX</a></li><li><a href="https://tssdk.brix365.com/en/latest/" target="_blank">SDK</a></li><li><a href="https://api.brix365.com/en/" target="_blank">API</a></li></ul><ul class="footer-mobile__list"><li><a href="https://brix365.com/en/help/platform/get-trial.html">Platform</a></li><li><a href="https://brix365.com/en/help/ecm/ecm-functions.html">ECM</a></li><li><a href="https://brix365.com/en/help/service/service-functions.html">Service</a></li><li><a href="https://brix365.com/en/help/projects/projects-functions.html">Projects</a></li></ul>
</div>
<div class="footer-wrap">
<div><span class="mobile-question-popup">Send feedback</span><form method="POST" action class="question__popup question-xs" id="question__popup"><div class="question-wrap"><span class="close"></span><span class="title">Ask a question</span><label for="help_question" style="display: none;"></label><textarea name="help_question" id="help_question"></textarea><input type="submit" value="Send"></div></form><div class="hidden fade-in question-success-xs">Sent</div></div>
<div class="footer-flex-b">
<span class="footer-copy">&copy; 2025 BRIX</span>
<ul class="footer-list">
<li class="footer-item">
<a href="#" class="arrow-top" style="display: block;"></a>
</li>
</ul>
</div>
</div>
</div>
</footer>
<iframe name="hmnavigation" style="display:none!important"></iframe>
<script src="./jquery-ui.js"></script>
<!--script src="//cdn.jsdelivr.net/npm/featherlight@1.7.14/release/featherlight.min.js" type="text/javascript" charset="utf-8"></script-->
<script src="./jquery.tocify.min.js"></script>
<script src="./TypoReporter.min.js"></script>
<script src="./google-search.js"></script>
<script src="./main.js"></script>
<script type="text/javascript">
HMInitToggle('TOGGLE0186A1','hm.type','dropdown','hm.state','0');
HMInitToggle('TOGGLE0186A2','hm.type','dropdown','hm.state','0');
HMInitToggle('TOGGLE0186A3','hm.type','dropdown','hm.state','0');
</script>
</body>
</html>