Created
April 6, 2017 21:18
-
-
Save bfodeke/848013c4152c972e96ce32c9a46e8a3b to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/** | |
* Implements hook_page_alter(). | |
*/ | |
function mymodule_page_alter(&$page) { | |
if (!extension_loaded('newrelic')) { | |
return; | |
} | |
$name = NULL; | |
// Look for a panel page... | |
$panel_page = page_manager_get_current_page(); | |
if (isset($panel_page['name'])) { | |
// If it's a node page put the argument's node type into the transaction | |
// name. | |
if ($panel_page['name'] == 'node_view') { | |
if (isset($panel_page['contexts']['argument_entity_id:node_1']->data)) { | |
$node = $panel_page['contexts']['argument_entity_id:node_1']->data; | |
$name = 'page_manager_node_view_page/' . $node->type; | |
} | |
} | |
// If it's a page_manager page use the panel name. | |
else if ($panel_page['task']['task type'] == 'page') { | |
$name = 'page_manager_page_execute/' . $panel_page['name']; | |
} | |
} | |
else { | |
$menu_item = menu_get_item(); | |
if ($menu_item['path'] == 'node/%') { | |
// Looks like panels didn't have a variant and it's falling back to | |
// node_page_view. | |
$name = 'node_page_view/' . $menu_item['page_arguments'][0]->type; | |
} | |
} | |
if ($name) { | |
newrelic_name_transaction($name); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment