Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Jan 31 2019 07:19
    DanielTimLee starred oetiker/rrdtool-1.x
  • Jan 28 2019 20:24
    c72578 opened #950
  • Jan 28 2019 10:43

    oetiker on master

    Fix _errno inconsistent dll lin… (compare)

  • Jan 28 2019 10:43
    oetiker closed #949
  • Jan 28 2019 09:29
    c72578 commented #949
  • Jan 27 2019 00:12
    c72578 opened #949
  • Jan 25 2019 14:25
    c72578 opened #948
  • Jan 25 2019 12:50
    oetiker commented #947
  • Jan 25 2019 12:50

    oetiker on master

    Fix rc compiler redefinition wa… (compare)

  • Jan 25 2019 12:50
    oetiker closed #947
  • Jan 25 2019 10:11
    c72578 opened #947
  • Jan 25 2019 09:59

    oetiker on master

    Initialize local variable junk … (compare)

  • Jan 25 2019 09:59
    oetiker closed #946
  • Jan 24 2019 16:46
    c72578 opened #946
  • Jan 24 2019 10:52

    oetiker on master

    Include winsdkver.h for _WIN32_… (compare)

  • Jan 24 2019 10:52
    oetiker closed #945
  • Jan 24 2019 10:52
    oetiker commented #945
  • Jan 24 2019 09:05
    loose11 starred oetiker/rrdtool-1.x
  • Jan 23 2019 10:48
    wukuan405 starred oetiker/rrdtool-1.x
  • Jan 22 2019 15:14
andrewchambers
@andrewchambers
btw, any idea when the next release will be?
Fabien Wernli
@faxm0dem
andrewchambers: o/
andrewchambers: any news from grafana (signing)?
Tobias Oetiker
@oetiker
aargh yes, I should do a release
1 reply
andrewchambers
@andrewchambers
@faxm0dem they have been in contact with me, so i think its just waiting for a reviewer
andrewchambers
@andrewchambers
random thoughts about rrdtool 2.0:
  • I was thinking a bit about ways to maintain a fixed sized file while adding more compression, dunno if anyone has done any work on that?
  • I think if the graphing tool/code was stand alone it could be reused while making a smaller core of rrdtool. Though i guess most of the hard stuff is shared with xport, around aligning values.
andrewchambers
@andrewchambers
my best idea w.r.t compression is divide the file into 4096 byte blocks and have a dynamic range per block. Perhaps put the current block next to the header such that they can be updated together as one write
but then you need some sort of time index, so i dunno
Tobias Oetiker
@oetiker
at the end of the day it cones down to the question if we can think of a clever way to get a sufficiently large amount of data to write to disk in one go ... preferably several blocks worth
sferguson-ISI
@sferguson-ISI

Trying to compile a very simple program:
`#include <stdio.h>

include <rrd.h>

int main() {
size_t argc = 6;
char *argv[] = {
"test.rrd",
"--start",
"920804400",
"DS:speed:COUNTER:600:U:U",
"RRA:AVERAGE:0.5:1:24",
"RRA:AVERAGE:0.5:6:10"
};
return 0;
} withgcc rrdTest.c /opt/rrdtool-1.7.2/lib/librrd.a -o rrdTestbut get all sorts of errors like: "/usr/bin/ld: /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_thread_safe.c:49: undefined reference topthread_getspecific'" and rpn_calc undefined references. What is the right way to build this for a c program?

andrewchambers
@andrewchambers
try enabling pthread
-pthread
sferguson-ISI
@sferguson-ISI
@andrewchambers that fixed my threading-specific errors! Now I have a whole slew of new linking errs: ,/usr/bin/ld: /opt/rrdtool-1.7.2/lib/librrd.a(librrdupd_la-rrd_create.o): in function parseDS': /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:343: undefined reference tog_regex_new'
/usr/bin/ld: /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:350: undefined reference to g_regex_match' /usr/bin/ld: /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:386: undefined reference tog_match_info_fetch_pos'
/usr/bin/ld: /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:395: undefined reference to g_match_info_fetch_pos' /usr/bin/ld: /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:396: undefined reference tog_match_info_fetch_pos'
/usr/bin/ld: /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:439: undefined reference to g_match_info_fetch_pos' /usr/bin/ld: /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:450: undefined reference tog_match_info_fetch_pos'
/usr/bin/ld: /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:465: undefined reference to g_match_info_free' /usr/bin/ld: /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:466: undefined reference tog_regex_unref'
/usr/bin/ld: /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:465: undefined reference to g_match_info_free' /usr/bin/ld: /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:466: undefined reference tog_regex_unref'
/usr/bin/ld: /opt/rrdtool-1.7.2/lib/librrd.a(librrdupd_la-rrd_create.o): in function rrd_create_r2': /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:1081: undefined reference tog_list_free_full'
/usr/bin/ld: /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:1059: undefined reference to g_list_append' /usr/bin/ld: /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:1081: undefined reference tog_list_free_full'
/usr/bin/ld: /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:1081: undefined reference to g_list_free_full' /usr/bin/ld: /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:1081: undefined reference tog_list_free_full'
/usr/bin/ld: /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:1081: undefined reference to g_list_free_full' /usr/bin/ld: /opt/rrdtool-1.7.2/lib/librrd.a(librrdupd_la-rrd_create.o): in functionrrd_create':
/tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:253: undefined reference to g_list_free_full' /usr/bin/ld: /opt/rrdtool-1.7.2/lib/librrd.a(librrdupd_la-rrd_create.o):/tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:253: more undefined references tog_list_free_full' follow
/usr/bin/ld: /opt/rrdtool-1.7.2/lib/librrd.a(librrdupd_la-rrd_create.o): in function rrd_create': /tmp/rrdbuild/rrdtool-1.7.2/src/rrd_create.c:178: undefined reference tog_list_append'
andrewchambers
@andrewchambers
do you have pkg-config btw? maybe you can try somthing like
pkg-config --cflags librrd
to see what you need
if not, you just gotta find what libraries define those
sferguson-ISI
@sferguson-ISI
i do
@andrewchambers I ran that "pkg-config --cflags librrd" but it doesn't return anything.
andrewchambers
@andrewchambers
what about
--ldflags
oh
it looks like this is a librrd you built yourself
sferguson-ISI
@sferguson-ISI
@andrewchambers is there a simple example of how to use rrd_create from a c program? That also shows how to build it?
andrewchambers
@andrewchambers
not sure sorry, someone else might be able to answer
Tobias Oetiker
@oetiker
you can look at how rrdtool is built ... since it does exactly that ... use librrd functions from a c program
sferguson-ISI
@sferguson-ISI
cool, I'll take a look
andrewchambers
@andrewchambers
@oetiker still pretty keen for a new release
Tobias Oetiker
@oetiker
a political release? .... hmmm :)
sounds very attractive ... will make this my weekend project
andrewchambers
@andrewchambers
lol, whatever suits you
andrewchambers
@andrewchambers
thanks!
andrewchambers
@andrewchambers
no luck? The memory leak in rrd xport is quite bad for rrdtool remote control
Tobias Oetiker
@oetiker
is this reproducible ? have you opened a bug ?
andrewchambers
@andrewchambers
@oetiker we already fixed it
just no release since then
it just means rrdtool xport leaks memory if you use the remote control
which is what my graph server thing is based on
Its easy to work around though
@oetiker oh wow
sorry I had a total memory lapse
you did the release and I even thanked you for it
:P
all good, I just gotta update my OS package
I must be tired :P
sorry for that lol
I will make sure my distro gets 1.8
andrewchambers
@andrewchambers
thanks for all your work - rrdtool is so fun