Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion _config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -112,4 +112,4 @@ release:
broker_branch: release-2.2.0
pe_broker_full_ver: 2.2.0PE
# <<< TBMQ
trendz_ver: 1.15.0
trendz_ver: 1.15.0.4
8 changes: 8 additions & 0 deletions _data/trendz-upgrade-instructions-data.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,17 @@
1.15.0.4:
upgradable-from: "1.7.0"
tbVersion: "4.3.0"
release-date: Feb 9 2026
lts: "true"
x: "true"
patch: "true"
1.15.0:
upgradable-from: "1.7.0"
tbVersion: "4.3.0"
release-date: Jan 20 2026
lts: "true"
x: "true"
vulnerable: "true"
1.14.0:
upgradable-from: "1.7.0"
tbVersion: "4.2.0"
Expand Down
10 changes: 10 additions & 0 deletions _includes/docs/trendz/releases/releases-table/v1-15-0-4.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
## Trendz Analytics v1.15.0.4 (9 Feb 2026)

**Improvements:**
* Improved Python executor stability and performance

**Bug fixes:**

* Fixed topology discovery
* Fixed metric generation for boolean telemetry
* Fixed telemetry loading when metric names contained special characters
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
{%- assign platform = "Trendz Analytics" -%}
{%- assign current_version = include.version -%}
{%- assign family = include.family -%}
{%- assign patch_status = include.patch_status -%}
{%- assign base_version = include.base_version -%}

{%- assign curr_parts = current_version | split: "." -%}

{%- assign curr_major = curr_parts[0] -%}
{%- assign curr_minor = curr_parts[1] -%}

{%- assign curr_major_n = curr_major | plus: 0 -%}
{%- assign curr_minor_n = curr_minor | plus: 0 -%}

{% if patch_status == "true" %}
### Upgrading {{ platform }} to latest {{ base_version }} ({{ current_version }})
{% else %}
### Upgrading {{ platform }} to {{ current_version }}
{% endif %}

{%- assign platform_hash = "#upgrading-trendz-analytics-to-" -%}

{% capture difference %}
**NOTE:**
<br>
[**Prepare**](#prepare-for-upgrading-trendz-analytics) for upgrading Trendz Analytics.
{% endcapture %}
{% include templates/info-banner.md content=difference %}

{% capture tb_haproxy_note %}
**NOTE:**
<br>
If you are using Trendz behind **HAProxy**, make sure that the paths **`/trendz/`** and **`/apiTrendz/`** are routed to the Trendz backend instead of **`/trendz`** and **`/apiTrendz`**.
**NOTE:**
<br>
Additionally, we highly recommend adding Trendz to the **ThingsBoard HAProxy configuration** so that Trendz is accessible from the **same domain as ThingsBoard**.
{% endcapture %}
{% include templates/warn-banner.md content=tb_haproxy_note %}

#### Trendz Analytics package download

```bash
wget https://dist.thingsboard.io/trendz-{{ current_version }}.rpm
```
{: .copy-code}

#### Trendz Analytics service upgrade

* Install latest Trendz Analytics service

```bash
sudo rpm -Uvh trendz-{{ current_version }}.rpm
```
{: .copy-code}

**NOTE:** Package installer will ask you to merge your Trendz configuration. It is preferred to use **merge option** to make sure that all your previous parameters will not be overwritten.

Execute regular upgrade script:

```bash
sudo /usr/share/trendz/bin/install/upgrade.sh
```
{: .copy-code}

#### Start the service

```bash
sudo service trendz start
```
{: .copy-code}

#### Sync Trendz with ThingsBoard

After upgrade, it's necessary to sync Trendz with ThingsBoard. You can find out how to do it [here](/docs/trendz/install/rhel#step-6-sync-thingsboard-with-trendz).
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
{%- assign platform = "Trendz Analytics" -%}
{%- assign current_version = include.version -%}
{%- assign family = include.family -%}
{%- assign patch_status = include.patch_status -%}
{%- assign base_version = include.base_version -%}

{%- assign curr_parts = current_version | split: "." -%}

{%- assign curr_major = curr_parts[0] -%}
{%- assign curr_minor = curr_parts[1] -%}

{%- assign curr_major_n = curr_major | plus: 0 -%}
{%- assign curr_minor_n = curr_minor | plus: 0 -%}

{% if patch_status == "true" %}
### Upgrading {{ platform }} to latest {{ base_version }} ({{ current_version }})
{% else %}
### Upgrading {{ platform }} to {{ current_version }}
{% endif %}

{%- assign platform_hash = "#upgrading-trendz-analytics-to-" -%}

{% capture tb_haproxy_note %}
**NOTE:**
<br>
If you are using Trendz behind **HAProxy**, make sure that the paths **`/trendz/`** and **`/apiTrendz/`** are routed to the Trendz backend instead of **`/trendz`** and **`/apiTrendz`**.
<br>
Additionally, we highly recommend adding Trendz to the **ThingsBoard HAProxy configuration** so that Trendz is accessible from the **same domain as ThingsBoard**.
{% endcapture %}
{% include templates/warn-banner.md content=tb_haproxy_note %}

#### {{ platform }} service upgrade

{% include docs/trendz/install/docker-upgrade-steps.md version=current_version %}

#### Sync Trendz with ThingsBoard

After upgrade, it's necessary to sync Trendz with ThingsBoard. You can find out how to do it [here](/docs/trendz/install/docker#step-6-sync-thingsboard-with-trendz).

Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
{%- assign platform = "Trendz Analytics" -%}
{%- assign current_version = include.version -%}
{%- assign family = include.family -%}
{%- assign patch_status = include.patch_status -%}
{%- assign base_version = include.base_version -%}

{%- assign curr_parts = current_version | split: "." -%}

{%- assign curr_major = curr_parts[0] -%}
{%- assign curr_minor = curr_parts[1] -%}

{%- assign curr_major_n = curr_major | plus: 0 -%}
{%- assign curr_minor_n = curr_minor | plus: 0 -%}

{% if patch_status == "true" %}
### Upgrading {{ platform }} to latest {{ base_version }} ({{ current_version }})
{% else %}
### Upgrading {{ platform }} to {{ current_version }}
{% endif %}

{%- assign platform_hash = "#upgrading-trendz-analytics-to-" -%}

{% capture difference %}
**NOTE:**
<br>
[**Prepare**](#prepare-for-upgrading-trendz-analytics) for upgrading Trendz Analytics.
{% endcapture %}
{% include templates/info-banner.md content=difference %}

{% capture tb_haproxy_note %}
**NOTE:**
<br>
If you are using Trendz behind **HAProxy**, make sure that the paths **`/trendz/`** and **`/apiTrendz/`** are routed to the Trendz backend instead of **`/trendz`** and **`/apiTrendz`**.
<br>
Additionally, we highly recommend adding Trendz to the **ThingsBoard HAProxy configuration** so that Trendz is accessible from the **same domain as ThingsBoard**.
{% endcapture %}
{% include templates/warn-banner.md content=tb_haproxy_note %}

#### Trendz Analytics package download

```bash
wget https://dist.thingsboard.io/trendz-{{ current_version }}.deb
```
{: .copy-code}

#### Trendz Analytics service upgrade

* Install latest Trendz Analytics service

```bash
sudo dpkg -i trendz-{{ current_version }}.deb
```
{: .copy-code}

**NOTE:** Package installer will ask you to merge your Trendz configuration. It is preferred to use **merge option** to make sure that all your previous parameters will not be overwritten.

Execute regular upgrade script:

```bash
sudo /usr/share/trendz/bin/install/upgrade.sh
```
{: .copy-code}

#### Start the service

```bash
sudo service trendz start
```
{: .copy-code}

#### Sync Trendz with ThingsBoard

After upgrade, it's necessary to sync Trendz with ThingsBoard. You can find out how to do it [here](/docs/trendz/install/ubuntu#step-6-sync-thingsboard-with-trendz).
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
{%- assign platform = "Trendz Analytics" -%}
{%- assign current_version = include.version -%}
{%- assign family = include.family -%}
{%- assign patch_status = include.patch_status -%}
{%- assign base_version = include.base_version -%}

{%- assign curr_parts = current_version | split: "." -%}

{%- assign curr_major = curr_parts[0] -%}
{%- assign curr_minor = curr_parts[1] -%}

{%- assign curr_major_n = curr_major | plus: 0 -%}
{%- assign curr_minor_n = curr_minor | plus: 0 -%}

{% if patch_status == "true" %}
### Upgrading {{ platform }} to latest {{ base_version }} ({{ current_version }})
{% else %}
### Upgrading {{ platform }} to {{ current_version }}
{% endif %}

{%- assign platform_hash = "#upgrading-trendz-analytics-to-" -%}

{% capture tb_haproxy_note %}
**NOTE:**
<br>
If you are using Trendz behind **HAProxy**, make sure that the paths **`/trendz/`** and **`/apiTrendz/`** are routed to the Trendz backend instead of **`/trendz`** and **`/apiTrendz`**.
Additionally, we highly recommend adding Trendz to the **ThingsBoard HAProxy configuration** so that Trendz is accessible from the **same domain as ThingsBoard**.
{% endcapture %}
{% include templates/warn-banner.md content=tb_haproxy_note %}

#### Trendz Analytics package download

Download Trendz Analytics installation package for Windows: [trendz-windows-{{ current_version }}.zip](https://dist.thingsboard.io/trendz-windows-{{ current_version }}.zip).

#### Trendz Analytics service upgrade

* Stop Trendz service if it is running.

```text
net stop trendz
```
{: .copy-code}

* Make a backup of previous Trendz Analytics configuration located in \<Trendz install dir\>\conf (for ex. C:\trendz\conf).
* Remove ThingsBoard install dir.
* Unzip installation archive to ThingsBoard install dir.
* Compare your old Trendz configuration files (from the backup you made in the first step) with new ones.

{% assign base_version_parts = base_version | split: "." %}
{% assign patch_part = base_version_parts[2] %}
{% if patch_status == "true" %}
{% capture update_note %}
**NOTE:**
If you are upgrading from version {{ family | append: "." | append: patch_part | append: ".x" }}, **DO NOT** run the upgrade script; proceed directly to starting the service.
{% endcapture %}
{% include templates/info-banner.md content=update_note %}
{% endif %}

* Finally, run **upgrade.bat** script to upgrade Trendz to the new version.

**NOTE** Scripts listed above should be executed using Administrator Role.

```text
C:\trendz>upgrade.bat
```
{: .copy-code}

#### Start the service

```text
net start trendz
```
{: .copy-code}

#### Sync Trendz with ThingsBoard

After upgrade, it's necessary to sync Trendz with ThingsBoard. You can find out how to do it [here](/docs/trendz/install/windows#step-6-sync-thingsboard-with-trendz).
48 changes: 48 additions & 0 deletions _includes/trendz-upgrade-instructions.liquid
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
{% assign upgrade_instructions_data = site.data.trendz-upgrade-instructions-data %}
{% assign family = include.family %}
{% assign os = include.os %}

{% assign family_parts = family | split: "." %}
{% assign family_major = family_parts[0] %}
{% assign family_minor = family_parts[1] %}

{% for item in upgrade_instructions_data %}
{% if item[1].vulnerable == 'true' %}
{% continue %}
{% endif %}

{% assign version = item[0] %}
{% assign data = item[1] %}

{% assign parts = version | split: "." %}
{% assign major = parts[0] %}
{% assign minor = parts[1] %}

{% if major == family_major and minor == family_minor %}
{% assign applicable_versions = data.applicable-versions %}

{% assign display_version = version %}
{% if parts.size == 3 and parts[2] == "0" %}
{% assign display_version = parts[0] | append: "." | append: parts[1] %}
{% endif %}

{% assign base_version = display_version %}
{% assign patch_status = "false" %}

{% if item[1].patch == "true" %}
{% assign patch_status = "true" %}
{% assign base_version = parts[0] | append: "." | append: parts[1] | append: "." | append: parts[2] %}
{% endif %}

{% if os == "windows" %}
{% include templates/trendz/upgrade-instructions/windows-upgrade-instructions.md family=family version=display_version patch_status=patch_status base_version=base_version x=data.x %}
{% elsif os == "ubuntu" %}
{% include templates/trendz/upgrade-instructions/ubuntu-upgrade-instructions.md family=family version=display_version patch_status=patch_status base_version=base_version x=data.x %}
{% elsif os == "centos" %}
{% include templates/trendz/upgrade-instructions/centos-upgrade-instructions.md family=family version=display_version patch_status=patch_status base_version=base_version x=data.x %}
{% elsif os == "docker" %}
{% include templates/trendz/upgrade-instructions/docker-upgrade-instructions.md family=family version=display_version patch_status=patch_status base_version=base_version %}
{% endif %}
{% endif %}

{% endfor %}
Loading