Ad Widget

Collapse

Zabbix API

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • sparkjohn
    Junior Member
    • Dec 2013
    • 1

    #1

    Zabbix API

    Hello,

    We are using zabbix api to retrieve bandwidth data for various periods. But API calls that have all the data for say an entire month crash the Zabbix API because it is way too much data coming back.It looks like it using a time interval of 5 seconds or so. My question is whether it is possible to increase the time interval to 1 day when collecting bandwidth data for a large period of time like 1 month?

    Please let me know

    Regards
    John
  • richlv
    Senior Member
    Zabbix Certified Trainer
    Zabbix Certified SpecialistZabbix Certified Professional
    • Oct 2005
    • 3112

    #2
    unfortunately, not. you probably want to vote on https://support.zabbix.com/browse/ZBXNEXT-656
    Zabbix 3.0 Network Monitoring book

    Comment

    • MaxM
      Member
      • Sep 2011
      • 42

      #3
      Am I missing something here? Based on the API reference you have two options for limitations:

      Limit: Will limit the amount of data returned, returning the first n values. This kind of sucks the fat one, as it always returns just the first n items.

      Example:

      >>> zapi.history.get(history=0, itemids=23534, limit=10, output="extend")

      [{u'itemid': u'23534', u'ns': u'6923582', u'value': u'0.3334', u'clock': u'1377023234'}, {u'itemid': u'23534', u'ns': u'22457713', u'value': u'0.4999', u'clock': u'1377023294'}, {u'itemid': u'23534', u'ns': u'12905234', u'value': u'0.3334', u'clock': u'1377023354'}, {u'itemid': u'23534', u'ns': u'28664664', u'value': u'0.6498', u'clock': u'1377023414'}, {u'itemid': u'23534', u'ns': u'2856738', u'value': u'0.3835', u'clock': u'1377023474'}, {u'itemid': u'23534', u'ns': u'11541128', u'value': u'0.6999', u'clock': u'1377023534'}, {u'itemid': u'23534', u'ns': u'28055071', u'value': u'0.4499', u'clock': u'1377023594'}, {u'itemid': u'23534', u'ns': u'42223362', u'value': u'0.6332', u'clock': u'1377023654'}, {u'itemid': u'23534', u'ns': u'1437625', u'value': u'0.5337', u'clock': u'1377023714'}, {u'itemid': u'23534', u'ns': u'2917670', u'value': u'0.6333', u'clock': u'1377023774'}]

      Time from/Time Till: Defines a specific date range to search in (assuming you're comfortable with epoch time). Example:

      >>> zapi.history.get(history=0, itemids=23534, time_from=1386698096, output="extend")
      [{u'itemid': u'23534', u'ns': u'18507160', u'value': u'29.9549', u'clock': u'1386698114'}, {u'itemid': u'23534', u'ns': u'88582884', u'value': u'35.9247', u'clock': u'1386698174'}, {u'itemid': u'23534', u'ns': u'172388287', u'value': u'47.0842', u'clock': u'1386698234'}, {u'itemid': u'23534', u'ns': u'251334998', u'value': u'41.3456', u'clock': u'1386698294'}, {u'itemid': u'23534', u'ns': u'321995856', u'value': u'31.7459', u'clock': u'1386698354'}, {u'itemid': u'23534', u'ns': u'391806923', u'value': u'34.3434', u'clock': u'1386698414'}, {u'itemid': u'23534', u'ns': u'462560727', u'value': u'33.4439', u'clock': u'1386698474'}, {u'itemid': u'23534', u'ns': u'546808325', u'value': u'50.2628', u'clock': u'1386698534'}, {u'itemid': u'23534', u'ns': u'25736293', u'value': u'38.1312', u'clock': u'1386698594'}, {u'itemid': u'23534', u'ns': u'147510347', u'value': u'35.1453', u'clock': u'1386698654'}, {u'itemid': u'23534', u'ns': u'263849343', u'value': u'29.0603', u'clock': u'1386698714'}, {u'itemid': u'23534', u'ns': u'380263622', u'value': u'36.5458', u'clock': u'1386698774'}, {u'itemid': u'23534', u'ns': u'532821661', u'value': u'46.5151', u'clock': u'1386698834'}, {u'itemid': u'23534', u'ns': u'662224950', u'value': u'41.8597', u'clock': u'1386698894'}, {u'itemid': u'23534', u'ns': u'709031069', u'value': u'30.1432', u'clock': u'1386698954'}, {u'itemid': u'23534', u'ns': u'755256276', u'value': u'35.4893', u'clock': u'1386699014'}, {u'itemid': u'23534', u'ns': u'804569559', u'value': u'32.2402', u'clock': u'1386699074'}, {u'itemid': u'23534', u'ns': u'144539505', u'value': u'51.2639', u'clock': u'1386699134'}, {u'itemid': u'23534', u'ns': u'283995753', u'value': u'38.2112', u'clock': u'1386699194'}, {u'itemid': u'23534', u'ns': u'618659212', u'value': u'35.5683', u'clock': u'1386699254'}, {u'itemid': u'23534', u'ns': u'731503020', u'value': u'30.1433', u'clock': u'1386699314'}, {u'itemid': u'23534', u'ns': u'915094069', u'value': u'35.7739', u'clock': u'1386699374'}, {u'itemid': u'23534', u'ns': u'69437728', u'value': u'45.2714', u'clock': u'1386699434'}, {u'itemid': u'23534', u'ns': u'202695761', u'value': u'42.4224', u'clock': u'1386699494'}, {u'itemid': u'23534', u'ns': u'336731895', u'value': u'29.9165', u'clock': u'1386699554'}, {u'itemid': u'23534', u'ns': u'56475990', u'value': u'34.6619', u'clock': u'1386699614'}, {u'itemid': u'23534', u'ns': u'182411880', u'value': u'32.8145', u'clock': u'1386699674'}, {u'itemid': u'23534', u'ns': u'19693155', u'value': u'50.3031', u'clock': u'1386699734'}, {u'itemid': u'23534', u'ns': u'66388750', u'value': u'39.5859', u'clock': u'1386699794'}, {u'itemid': u'23534', u'ns': u'116751779', u'value': u'33.8050', u'clock': u'1386699854'}, {u'itemid': u'23534', u'ns': u'160930740', u'value': u'30.8273', u'clock': u'1386699914'}, {u'itemid': u'23534', u'ns': u'219669124', u'value': u'35.8649', u'clock': u'1386699974'}, {u'itemid': u'23534', u'ns': u'298502037', u'value': u'47.2712', u'clock': u'1386700034'}, {u'itemid': u'23534', u'ns': u'368387042', u'value': u'42.7169', u'clock': u'1386700094'}, {u'itemid': u'23534', u'ns': u'426914141', u'value': u'31.7857', u'clock': u'1386700154'}, {u'itemid': u'23534', u'ns': u'480121197', u'value': u'33.9865', u'clock': u'1386700214'}, {u'itemid': u'23534', u'ns': u'555517288', u'value': u'32.0930', u'clock': u'1386700274'}, {u'itemid': u'23534', u'ns': u'625553148', u'value': u'49.5755', u'clock': u'1386700334'}, {u'itemid': u'23534', u'ns': u'673928111', u'value': u'40.4840', u'clock': u'1386700394'}, {u'itemid': u'23534', u'ns': u'721233524', u'value': u'31.2753', u'clock': u'1386700454'}, {u'itemid': u'23534', u'ns': u'760822870', u'value': u'31.2960', u'clock': u'1386700514'}, {u'itemid': u'23534', u'ns': u'804600711', u'value': u'35.8738', u'clock': u'1386700574'}, {u'itemid': u'23534', u'ns': u'860998176', u'value': u'45.7570', u'clock': u'1386700634'}, {u'itemid': u'23534', u'ns': u'24993789', u'value': u'43.1850', u'clock': u'1386700694'}, {u'itemid': u'23534', u'ns': u'155592150', u'value': u'31.6977', u'clock': u'1386700754'}, {u'itemid': u'23534', u'ns': u'270185584', u'value': u'34.7337', u'clock': u'1386700814'}, {u'itemid': u'23534', u'ns': u'392128127', u'value': u'32.2844', u'clock': u'1386700874'}, {u'itemid': u'23534', u'ns': u'42754000', u'value': u'47.8956', u'clock': u'1386700934'}, {u'itemid': u'23534', u'ns': u'176068274', u'value': u'40.5433', u'clock': u'1386700994'}, {u'itemid': u'23534', u'ns': u'506252871', u'value': u'35.7532', u'clock': u'1386701054'}, {u'itemid': u'23534', u'ns': u'592510897', u'value': u'30.1566', u'clock': u'1386701114'}, {u'itemid': u'23534', u'ns': u'15292825', u'value': u'36.3665', u'clock': u'1386701174'}, {u'itemid': u'23534', u'ns': u'62243638', u'value': u'43.0830', u'clock': u'1386701234'}, {u'itemid': u'23534', u'ns': u'118606600', u'value': u'44.1918', u'clock': u'1386701294'}, {u'itemid': u'23534', u'ns': u'170748809', u'value': u'30.6067', u'clock': u'1386701354'}, {u'itemid': u'23534', u'ns': u'225783997', u'value': u'34.1853', u'clock': u'1386701414'}, {u'itemid': u'23534', u'ns': u'283517286', u'value': u'32.0192', u'clock': u'1386701474'}, {u'itemid': u'23534', u'ns': u'375908419', u'value': u'47.5601', u'clock': u'1386701534'}, {u'itemid': u'23534', u'ns': u'435031486', u'value': u'40.6100', u'clock': u'1386701594'}, {u'itemid': u'23534', u'ns': u'492948700', u'value': u'36.2650', u'clock': u'1386701654'}, {u'itemid': u'23534', u'ns': u'546440321', u'value': u'31.1722', u'clock': u'1386701714'}, {u'itemid': u'23534', u'ns': u'607228031', u'value': u'35.7305', u'clock': u'1386701774'}, {u'itemid': u'23534', u'ns': u'689123293', u'value': u'43.8568', u'clock': u'1386701834'}, {u'itemid': u'23534', u'ns': u'751620046', u'value': u'44.6868', u'clock': u'1386701894'}, {u'itemid': u'23534', u'ns': u'810728925', u'value': u'32.4680', u'clock': u'1386701954'}, {u'itemid': u'23534', u'ns': u'1818147', u'value': u'35.2756', u'clock': u'1386702014'}, {u'itemid': u'23534', u'ns': u'127155996', u'value': u'31.3844', u'clock': u'1386702074'}, {u'itemid': u'23534', u'ns': u'294250653', u'value': u'46.6202', u'clock': u'1386702134'}, {u'itemid': u'23534', u'ns': u'427266835', u'value': u'39.9448', u'clock': u'1386702194'}, {u'itemid': u'23534', u'ns': u'549716715', u'value': u'35.0119', u'clock': u'1386702254'}, {u'itemid': u'23534', u'ns': u'111845138', u'value': u'31.1943', u'clock': u'1386702314'}, {u'itemid': u'23534', u'ns': u'432557775', u'value': u'34.9963', u'clock': u'1386702374'}, {u'itemid': u'23534', u'ns': u'599703276', u'value': u'42.8639', u'clock': u'1386702434'}, {u'itemid': u'23534', u'ns': u'38963486', u'value': u'45.5591', u'clock': u'1386702494'}, {u'itemid': u'23534', u'ns': u'100927036', u'value': u'33.2157', u'clock': u'1386702554'}, {u'itemid': u'23534', u'ns': u'212863727', u'value': u'34.6187', u'clock': u'1386702614'}, {u'itemid': u'23534', u'ns': u'333485848', u'value': u'31.7362', u'clock': u'1386702674'}, {u'itemid': u'23534', u'ns': u'495804949', u'value': u'46.2914', u'clock': u'1386702734'}, {u'itemid': u'23534', u'ns': u'43359348', u'value': u'41.0428', u'clock': u'1386702794'}, {u'itemid': u'23534', u'ns': u'138621227', u'value': u'37.0412', u'clock': u'1386702854'}, {u'itemid': u'23534', u'ns': u'208385019', u'value': u'30.0983', u'clock': u'1386702914'}, {u'itemid': u'23534', u'ns': u'309466599', u'value': u'34.4753', u'clock': u'1386702974'}, {u'itemid': u'23534', u'ns': u'429855295', u'value': u'43.2798', u'clock': u'1386703034'}, {u'itemid': u'23534', u'ns': u'510899937', u'value': u'44.8394', u'clock': u'1386703094'}, {u'itemid': u'23534', u'ns': u'122548936', u'value': u'33.2989', u'clock': u'1386703154'}, {u'itemid': u'23534', u'ns': u'437842401', u'value': u'34.3528', u'clock': u'1386703214'}, {u'itemid': u'23534', u'ns': u'558264732', u'value': u'31.4702', u'clock': u'1386703274'}, {u'itemid': u'23534', u'ns': u'659187404', u'value': u'46.1224', u'clock': u'1386703334'}, {u'itemid': u'23534', u'ns': u'721249169', u'value': u'40.0752', u'clock': u'1386703394'}, {u'itemid': u'23534', u'ns': u'775627616', u'value': u'37.4327', u'clock': u'1386703454'}, {u'itemid': u'23534', u'ns': u'820198534', u'value': u'30.5606', u'clock': u'1386703514'}, {u'itemid': u'23534', u'ns': u'154088409', u'value': u'35.9828', u'clock': u'1386703574'}, {u'itemid': u'23534', u'ns': u'322911558', u'value': u'42.5137', u'clock': u'1386703634'}, {u'itemid': u'23534', u'ns': u'663065334', u'value': u'45.3429', u'clock': u'1386703694'}, {u'itemid': u'23534', u'ns': u'53616217', u'value': u'33.0524', u'clock': u'1386703754'}, {u'itemid': u'23534', u'ns': u'160946673', u'value': u'34.9541', u'clock': u'1386703814'}, {u'itemid': u'23534', u'ns': u'131575469', u'value': u'31.3320', u'clock': u'1386703874'}, {u'itemid': u'23534', u'ns': u'313282813', u'value': u'44.4155', u'clock': u'1386703934'}, {u'itemid': u'23534', u'ns': u'396040185', u'value': u'40.8770', u'clock': u'1386703994'}, {u'itemid': u'23534', u'ns': u'487688189', u'value': u'38.2083', u'clock': u'1386704054'}, {u'itemid': u'23534', u'ns': u'567295685', u'value': u'30.9589', u'clock': u'1386704114'}, {u'itemid': u'23534', u'ns': u'680544475', u'value': u'34.6513', u'clock': u'1386704174'}, {u'itemid': u'23534', u'ns': u'786459792', u'value': u'39.6800', u'clock': u'1386704234'}, {u'itemid': u'23534', u'ns': u'35586906', u'value': u'45.3509', u'clock': u'1386704294'}, {u'itemid': u'23534', u'ns': u'80979862', u'value': u'34.1741', u'clock': u'1386704354'}, {u'itemid': u'23534', u'ns': u'125578376', u'value': u'36.4396', u'clock': u'1386704414'}, {u'itemid': u'23534', u'ns': u'172905006', u'value': u'31.3086', u'clock': u'1386704474'}, {u'itemid': u'23534', u'ns': u'254201804', u'value': u'43.5743', u'clock': u'1386704534'}, {u'itemid': u'23534', u'ns': u'322021923', u'value': u'41.2534', u'clock': u'1386704594'}, {u'itemid': u'23534', u'ns': u'385623075', u'value': u'38.5092', u'clock': u'1386704654'}, {u'itemid': u'23534', u'ns': u'437728487', u'value': u'29.3745', u'clock': u'1386704714'}, {u'itemid': u'23534', u'ns': u'500921727', u'value': u'34.6968', u'clock': u'1386704774'}, {u'itemid': u'23534', u'ns': u'104072540', u'value': u'42.6152', u'clock': u'1386704834'}, {u'itemid': u'23534', u'ns': u'466959423', u'value': u'44.5141', u'clock': u'1386704894'}, {u'itemid': u'23534', u'ns': u'579689666', u'value': u'34.0693', u'clock': u'1386704954'}, {u'itemid': u'23534', u'ns': u'630892569', u'value': u'34.6038', u'clock': u'1386705014'}, {u'itemid': u'23534', u'ns': u'65236846', u'value': u'30.8912', u'clock': u'1386705074'}, {u'itemid': u'23534', u'ns': u'223539713', u'value': u'44.4826', u'clock': u'1386705134'}, {u'itemid': u'23534', u'ns': u'352730926', u'value': u'41.2944', u'clock': u'1386705194'}, {u'itemid': u'23534', u'ns': u'695392232', u'value': u'38.3145', u'clock': u'1386705254'}, {u'itemid': u'23534', u'ns': u'731391160', u'value': u'30.8648', u'clock': u'1386705314'}]

      If you're looking for something more complex, I don't see what would be that hard about determining the specific range you're looking for programmatically, grabbing the first n objects using limit and time_from/time_until, examining the last object in the response, using time_from/time_until and limit to n+1 to 2n items, then repeating until no items are returned. This should let you quickly build a list of all the history objects you need/want. I wrote a rather simple algorithm for this and was just able to retrieve 1M records through the API w/o any stability issues.

      Comment

      Working...