Hauptmenü

DBLog - device rename

Begonnen von SusisStrolch, 05 September 2016, 20:03:32

Vorheriges Thema - Nächstes Thema

SusisStrolch

Mein Problem:
Das Device xyz wird von 'device_xyz' in 'device.xyz' umbenannt (jo - da ist ein Punkt im Device-Namen).
Wie mache ich dem DBLog-Modul klar dass die alten Logeinträge umzuändern sind?
Ist diese Funktion im DBLog enthalten oder muss ich da selbst via SQL Hand anlegen?
Synology DS1515+, 16GB RAM, 4x 6TB WD-Red
- Docker (FHEM), MariaDB, MariaDB10, Surveillance Station
Gateways: LCG miniCUL433, LCG miniCUL868, AVR-X4000, VU-Solo SE, Kodi
ESP8266: ESPEasy (S0-Counter, Temp/Hum), Sonoff TH, Sonoff 4ch

marvin78

Hast du die Funktion in der Doku von DBLog gefunden?

Wenn nicht, wird es nicht gehen und man kann es dann auf SQL Ebene erledigen.

Frank_Huber

Ich knöpfe hier mal an,
würde auch gerne umbenannte devices im dblog umbenennen.

dass das nicht auf FHEM heraus geht ist klar, aber hat zufällig jemand nen Link zu ner Anleitung?
sollte für nicht-SQL Profis verständlich sein. :-)

danke & Grüße
Frank

dev0

Falls Du MySQL verwendest:

mysql -u <username> -p
use <database>;
UPDATE history SET DEVICE = '<new_device_name>' WHERE DEVICE = '<old_device_name>';
UPDATE current SET DEVICE = '<new_device_name>' WHERE DEVICE = '<old_device_name>';
quit


Ohne Gewähr, auf eigene Gefahr.

Frank_Huber

Zitat von: dev0 am 30 November 2016, 12:06:39
Falls Du MySQL verwendest:
....
Ohne Gewähr, auf eigene Gefahr.

danke! schaut nach Konsolen Befehle aus?
also einfach telnetten und los gehts?
werd ich testen, melde mich wieder! :-)

/Frank

Lonie

Du kannst es auch direkt in fhem durchführen. Ich würde allerdings vorher ein Backup der Datenbank erstellen.


set <dbLog> userCommand UPDATE history SET DEVICE = '<new_device_name>' WHERE DEVICE = '<old_device_name>';
set <dbLog> userCommand UPDATE current SET DEVICE = '<new_device_name>' WHERE DEVICE = '<old_device_name>';

Frank_Huber

Danke Leonie,

funktioniert einwandfrei!
:-)

saschae

Obacht !
Bei mir wurden die Daten dadurch das ich das device umbenannt habe auch alle Zeitstempel geändert .....also sind die Daten Quasi unbrauchbar .....

DS_Starter

Hallo zusammen,

zur Info,. eine Funktion dafür gibt es im DbRep die alles nötige beachtet. 

set ... deviceRename  (readingRename)

siehe auch den Teil für RenameAgent im DbRep.

Grüße
Heiko
Proxmox+Debian+MariaDB, PV: SMA, Victron MPII+Pylontech+CerboGX
Maintainer: SSCam, SSChatBot, SSCal, SSFile, DbLog/DbRep, Log2Syslog, SolarForecast,Watches, Dashboard, PylonLowVoltage
Kaffeekasse: https://www.paypal.me/HMaaz
Contrib: https://svn.fhem.de/trac/browser/trunk/fhem/contrib/DS_Starter