Создание новой базы данных на основе существующей - PullRequest
4 голосов
/ 06 октября 2008

У меня есть несколько старых баз данных rrdtool, для которых точный рецепт создания давно потерян. Мне нужно создать новую базу данных с теми же характеристиками, что и текущие. Я сбросил пару старых баз данных и изучил их содержимое, но я не уверен, как интерпретировать метаданные. Я думаю, что это появляется в следующих строфах

<cf> AVERAGE </cf>
<pdp_per_row> 360 </pdp_per_row> <!-- 1800 seconds -->
<xff> 5.0000000000e-01 </xff>

Существует четыре таких строфы, которые соответствуют тому, как я помню, был установлен каскадный механизм каскадирования. Кто-нибудь уже сделал это, или может дать мне советы о том, как клонировать новую пустую базу данных rrd из существующей? Или покажи мне, где я пропустил это в документации.

Ответы [ 3 ]

3 голосов
/ 19 сентября 2017

Я использую команду rrdcreate . Он может создать новый rrd на основе существующего. Параметр -t указывает на существующий rrd в качестве шаблона.

rrdсоздать новый.rrd -t существующий.rrd

3 голосов
/ 06 октября 2008

rrdtools ' rrdinfo ваш друг!

Он расскажет вам, как были созданы источники данных и архив rrd файла. Пример

$ rrdtool info random.rrd
filename = "random.rrd"
rrd_version = "0001"
step = 300
last_update = 955892996
ds[a].type = "GAUGE"
ds[a].minimal_heartbeat = 600
ds[a].min = NaN
ds[a].max = NaN
ds[a].last_ds = "UNKN"
ds[a].value = 2.1824421548e+04
ds[a].unknown_sec = 0
ds[b].type = "GAUGE"
ds[b].minimal_heartbeat = 600
ds[b].min = NaN
ds[b].max = NaN
ds[b].last_ds = "UNKN"
ds[b].value = 3.9620838224e+03
ds[b].unknown_sec = 0
rra[0].cf = "AVERAGE"
rra[0].pdp_per_row = 1
rra[0].cdp_prep[0].value = nan
rra[0].cdp_prep[0].unknown_datapoints = 0
rra[0].cdp_prep[1].value = nan
rra[0].cdp_prep[1].unknown_datapoints = 0
2 голосов
/ 01 марта 2011

Вы можете попробовать использовать сценарий клонирования, описанный здесь . Он очень простой, но работает для простых rrd-файлов. Я использовал его, чтобы выяснить схему, сгенерированную munin. Мне нужно было вставить старые данные в munin, чтобы я спроектировал схему, установил --start на дату до начала моих старых данных и повторно импортировал данные в rrd.

$ python rrdinfo-parser.py -f test.rrd
rrdtool create test.rrd --start 920804400 --step 300 \
DS:speed:COUNTER:600:U:U \
RRA:AVERAGE:0.5:1:24 \
RRA:AVERAGE:0.5:6:10 \
...