Azure-Kusto-Daten einfügen duplizierte und beschädigte Daten, wenn ein Muster '2_' darin
Posted: 17 Mar 2025, 15:22
Verwenden von azure-kusto-data@5.0.1 Wenn eine Spalte mit Wertnull mit URI- oder Einnahme-URI ausführt, wird eine Spalte mit Null aufgenommen, sobald das vorherige Feld die Zeichen 2 _ darin enthält. Feld., kpi_inverter_production , #EsSSAB2 , #EssSab2_t010jpk01kkp03 , 0.0201
Daten aufgenommen:
, kpi_inverter_production , #EsSSAB2 , #EsSSAB2_T010JPK01KKP03 , 0.0201
, kpi_inverter_production , #EsSSAB2 , #EsSSAB2_T010JPK01KKP03 , null
führt eine erfolgreiche Einnahme und 1 Sekunde später nach. /> Wenn in dem Feld Geräte_key das Zeichen 2 durch 3 ersetzt, wird es korrekt aufgenommen. Kann es das Muster 2 _ als Sonderzeichen intern erkennen?
Die Abfrage ist eine Zeichenfolge mit einer .Inline -Einnahme , und obwohl ich weiß, dass sie für Produktionsumgebungen nicht empfohlen wird, wird der Fehler auch mit Streaming -Einnahme reproduziert.
Code: Select all
{
“Name”: “kpi_table”,
“OrderedColumns”:
[{
“Name”: “server_timestamp”,
“Type”: “System.DateTime”,
“CslType”: “datetime”
},
{
“Name”: “name”,
“Type”: “System.String”,
“CslType”: “string”
},
{
“Name”: “plant_id”,
“Type”: “System. String”,
“CslType”: “string”
},
{
“Name”: “device_key”,
“Type”: “System.String”,
“CslType”: “string”
},
{
“Name”: “value”,
“Type”: “System.Double”,
“CslType”: “real”
}]
}
< /code>
Daten zur Einnahme:
2025-03-13T22:06:00Z
Daten aufgenommen:
Code: Select all
2025-03-13T22:06:00Z
Code: Select all
2025-03-13T22:06:00Z
führt eine erfolgreiche Einnahme und 1 Sekunde später nach. /> Wenn in dem Feld Geräte_key das Zeichen 2 durch 3 ersetzt, wird es korrekt aufgenommen. Kann es das Muster 2 _ als Sonderzeichen intern erkennen?
Code: Select all
import pandas as pd
from azure.kusto.data import KustoClient
def __init__(self, url, database, client_id, client_secret, tenant_id):
kcsb = KustoConnectionStringBuilder.with_aad_application_key_authentication(
url, client_id, client_secret, tenant_id
)
self.conn = KustoClient(kcsb)
def execute_kql_query(self, query: str):
try:
logger.debug("Executing KQL query: %s", query)
response = self.conn.execute(self.database, query)
if response.get_exceptions():
raise Exception(response.get_exceptions())
return dataframe_from_result_table(response.primary_results[0])
except Exception as error:
logger.error("Error executing KQL query: %s", error)
return pd.DataFrame()