NAME
WebService::DataDog::Dashboard - Interface to Dashboard/Timeboard functions in DataDog's API.
VERSION
Version 1.0.3
SYNOPSIS
This module allows you interact with the Dashboard endpoint of the DataDog API.
Per DataDog: "The Dashboards end point allow you to programmatically create, update delete and query dashboards."
METHODS
get_all_dashboards()
Deprecated. Please use retrieve_all() instead.
retrieve_all()
Retrieve details for all user-created dashboards/timeboards ( does not include system-generated or integration dashboards ).
my $dashboard = $datadog->build('Dashboard');
my $dashboard_list = $dashboard->retrieve_all();
Parameters: None
get_dashboard()
Deprecated. Please use retrieve() instead.
retrieve()
Retrieve details for specified user-created dashboards/timeboards ( does not work for system-generated or integration dashboards/timeboards ).
my $dashboard = $datadog->build('Dashboard');
my $dashboard_data = $dashboard->retrieve( id => $dash_id );
Parameters:
id
Id of dashboard/timeboard you want to retrieve the details for.
update_dashboard()
Deprecated. Please use update() instead.
update()
Update details for specified user-created dashboard/timeboard ( does not work for system-generated or integration dashboards/timeboards ). Supply at least one of the arguments 'title', 'description', 'graphs'. Any argument not supplied will remain unchanged within the dashboard.
WARNING: If you only specify a new graph to add to the dashboard, you WILL LOSE ALL EXISTING GRAPHS. Your 'graphs' section must include ALL graphs that you want to be part of a dashboard.
my $dashboard = $datadog->build('Dashboard');
$dashboard->update(
id => $dash_id,
title => $dash_title,
description => $dash_description,
graphs => $graphs,
);
Parameters:
id
Id of dashboard you want to update.
title
Optional. Specify updated title for specified dashboard.
description
Optional. Specify updated description for specified dashboard.
graphs
Optional. Specify updated graph definition for specified dashboard.
create()
Create new DataDog dashboard/timeboard with 1+ graphs. If successful, returns created dashboard/timeboard id.
my $dashboard = $datadog->build('Dashboard');
my $dashboard_id = $dashboard->create(
title => $dash_title,
description => $dash_description,
graphs => $graphs,
);
Example:
my $new_dashboard_id = $dashboard->create(
title => "TEST DASH",
description => "test dashboard",
graphs =>
[
{
title => "Sum of Memory Free",
definition =>
{
events =>[],
requests => [
{ q => "sum:system.mem.free{*}" }
]
},
viz => "timeseries"
},
],
);
Parameters:
title
Specify title for new dashboard.
description
Specify description for new dashboard.
graphs
Specify graph definition for new dashboard.
title
Title of graph.
definition
Definition of graph.
events
Overlay any events from the event stream.
requests
Metrics you want to graph.
viz
Visualisation of graph. Valid values: timeseries (default), treemap.
delete_dashboard()
Deprecated. Please use delete() instead.
delete()
Delete specified user-created dashboard. NOTE: You cannot remove system-generated or integration dashboards.
my $dashboard = $datadog->build('Dashboard');
$dashboard->delete( id => $dash_id );
Parameters:
id
Dashboard id you want to delete.
INTERNAL FUNCTIONS
_error_checks()
Common error checking for creating/updating dashboards/timeboards.