---
title: Integrate Kepware KEPServerEX with Tiger Cloud | Tiger Data Docs
description: Stream OPC tag data from Kepware DataLogger into Tiger Cloud and store it in a hypertable
---

[Kepware KEPServerEX](https://www.kepware.com/en-us/products/kepserverex/) is an industrial connectivity platform that logs OPC tag data from controllers and sensors to ODBC-compliant databases using Kepware DataLogger.

This page shows you how to configure Kepware DataLogger to stream OPC data into Tiger Cloud and store it in a hypertable.

In this integration guide, you:

- Create a target hypertable in your Tiger Cloud service.
- Configure a Kepware DataLogger log group and ODBC DSN.
- Verify data flows into the target hypertable.

## Prerequisites for this integration guide

To follow these steps, you'll need:

- A [Tiger Cloud service](/get-started/quickstart/create-service/index.md).

  These steps use Tiger Cloud, but the same approach applies to a [self-hosted TimescaleDB](/get-started/choose-your-path/install-timescaledb/index.md) instance.

* Your [connection details](/integrate/find-connection-details/index.md).

- A running [Kepware Server EX](https://www.ptc.com/en/products/kepware/kepserverex) installation with the DataLogger add-on.
- The PostgreSQL ODBC driver installed on the Kepware host.

## Prepare your service

Create the target table in Tiger Cloud before DataLogger begins writing. Convert that table to a hypertable so your OPC time-series data is partitioned and chunked correctly.

Note

If Kepware DataLogger creates the table for you, convert it to a hypertable before you enable the log group.

1. **Connect to your Tiger Cloud service**

   Use the [Tiger Console](/build/data-management/run-queries-from-tiger-console/index.md) or another SQL editor to connect to your Tiger Cloud service.

2. **Create the target hypertable**

   Create the table directly as a hypertable partitioned on the `time` column:

   ```
   CREATE TABLE kepware_telemetry (
       time      timestamptz NOT NULL,
       tag_name  varchar(128),
       value     varchar,
       quality   varchar(32)
   ) WITH (
       timescaledb.hypertable,
       timescaledb.chunk_interval = '7 days'
   );
   ```

   The `chunk_interval` setting controls how much data each hypertable chunk holds. A 7-day interval works well for most OPC ingestion workloads. If you have high-throughput tag updates, consider a shorter interval like 1 day. You can adjust this later with `set_chunk_time_interval()`.

## Configure Kepware DataLogger

Point DataLogger at your Tiger Cloud hypertable and choose a table write mode that preserves data.

1. **Open the log group configuration**

   In DataLogger, open your configuration, then add a new log group or edit an existing one.

2. **Configure the ODBC DSN**

   In the log group settings, click the browse button for `DSN`, then select `Configure DSN…` to open the Microsoft ODBC Data Source Administrator.

   On the System DSN tab, click `Add`, choose the PostgreSQL ODBC driver for Tiger Data, and complete the driver wizard.

3. **Select the Tiger Cloud DSN**

   In the log group settings, choose the DSN you created for Tiger Cloud.

   If required, enter the DSN `Username` and `Password` for the Tiger Cloud service.

4. **Point the log group at the hypertable**

   Set `TableSelection` to `Create a new table once and always append to this table` and enter `kepware_telemetry` as the table name.

   Leave `Create Table If Missing` unchecked so DataLogger writes to the existing hypertable instead of creating a plain table.

5. **Add OPC tags to the log group**

   Add the server items or OPC tags you want to log. Use `Narrow` table format for the schema above, because the target hypertable stores one row per tag update with generic columns such as `tag_name`, `value`, and `quality`.

   In narrow mode, DataLogger uses a single column-mapping object for all log items. Map `Timestamp` to `time`, `Name` or `NumericID` to `tag_name`, `Value` to `value`, and `Quality` to `quality`.

6. **Enable the log group**

   Save the log group and set `Enabled` to `Yes`.

   DataLogger begins sending OPC updates to your Tiger Cloud hypertable when the log group is enabled.

## Stream OPC data to your service

A configured log group will only move data after an OPC tag update occurs.

1. **Generate a tag update**

   Trigger a value change on the configured OPC tag or wait for the polling interval so DataLogger logs a row.

2. **Confirm the data landed in Tiger Cloud**

   Run the following query in Tiger Console or another SQL editor:

   ```
   SELECT time, tag_name, value, quality
   FROM kepware_telemetry
   ORDER BY time DESC
   LIMIT 10;
   ```

   You should see recent rows from Kepware, with `time` reflecting when the tag value was logged.

You have successfully integrated Kepware KEPServerEX with Tiger Cloud.

## Troubleshooting

- **The DSN driver is not listed:** install the PostgreSQL ODBC driver and open the 32-bit ODBC Data Source Administrator on Windows.
- **`relation "kepware_telemetry" does not exist`:** verify the log group table name is `kepware_telemetry` and that the hypertable exists before enabling the group.
- **DataLogger created a plain table:** convert the table with `SELECT create_hypertable('kepware_telemetry', 'time');` and keep `Create Table If Missing` unchecked.
- **No rows appear after enabling the group:** confirm the log group is `Enabled` and that the configured OPC tags are updating.
