What could cause error related to "dashboard/tunnel/key"

The tunnel action is the action that retrieves the chart data on the dashboard.

As you may know the dashboard chart are generated by Google Chart Api.

As you can see from the method, the tunnel action calls the API URL to generate the chart:

public function tunnelAction()
{
    $httpClient = new Varien_Http_Client();
    $gaData = $this->getRequest()->getParam('ga');
    $gaHash = $this->getRequest()->getParam('h');
    if ($gaData && $gaHash) {
        $newHash = Mage::helper('adminhtml/dashboard_data')->getChartDataHash($gaData);
        if ($newHash == $gaHash) {
            $params = json_decode(base64_decode(urldecode($gaData)), true);
            if ($params) {
                $response = $httpClient->setUri(Mage_Adminhtml_Block_Dashboard_Graph::API_URL)
                        ->setParameterGet($params)
                        ->setConfig(array('timeout' => 5))
                        ->request('GET');

                $headers = $response->getHeaders();

                $this->getResponse()
                    ->setHeader('Content-type', $headers['Content-type'])
                    ->setBody($response->getBody());
            }
        }
    }
}

With:

const API_URL = 'http://chart.apis.google.com/chart';

The problem could be that your store is behing a proxy and thus it cannot retrieve the Google Chart API URL data.


From the official website : https://developers.google.com/chart/image/

Warning: This API is deprecated and is scheduled to be turned off on March 14, 2019. Please use the actively maintained Google Charts API instead.

It seems it is now turned off.