Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Exception while invoking method 'getChartData' Error: IndexMissingException[[api-umbrella-logs-v1-2015-01] missing] #617

Closed
brylie opened this issue Nov 11, 2015 · 11 comments

Comments

@brylie
Copy link
Contributor

brylie commented Nov 11, 2015

On the dashboard when interacting with the filter, the following exception is logged when only the month has been selected:

Exception while invoking method 'getChartData' Error:  IndexMissingException[[api-umbrella-logs-v1-2015-01] missing]
at Object.search (packages/meteorhacks_async/packages/meteorhacks_async.js:79:1)
at [object Object].doSearch (packages/frenchbread_elastic-rest/packages/frenchbread_elastic-rest.js:59:1)
at [object Object].Meteor.methods.getChartData (server/methods/elasticSearch.js:45:1)

Additionally, the 'Data Not Found' dialogue appears, suggesting the dashboard filter is missing exception handling when retrieving data from Elastic.

Steps to reproduce

  1. log in to the system as an admin user (to ensure you can access analytics data)
  2. go to the dashboard
  3. click a month from the dropdown (e.g. January)
  4. check the server console
@brylie
Copy link
Contributor Author

brylie commented Nov 11, 2015

@frenchbread can you please take a look at this? Check if you can reproduce the error.

@brylie
Copy link
Contributor Author

brylie commented Nov 11, 2015

Related issue #585

@frenchbread
Copy link
Contributor

@brylie This error appears every time when specified query does not match document in ES data store. I guess we can get rid of it by using try-carch approach when requesting for data.

@frenchbread
Copy link
Contributor

I was thinking of this approach when solving #582, #583, #585.

@frenchbread
Copy link
Contributor

As I mentioned in a comment, as far as I understand there is either search results or an error returned from ES. So we don't have much context at this point. Meaning that we can return a single error if try{ } fails, e.g. :

try{
    newSearch.doSeach(query)
}catch(err){
    return "Data not found...".
}

@brylie
Copy link
Contributor Author

brylie commented Nov 11, 2015

OK, cool. Be sure to add i18n tags on any user-facing text.

@frenchbread
Copy link
Contributor

@brylie How to access i18n file to be able to fetch its tags in js file?

@brylie
Copy link
Contributor Author

brylie commented Nov 11, 2015

Check the tap:i18n docs. It has a JS function to get a translation string.

You will have to determine whether to fetch the translation on the client or server, as they have slightly different methods (i.e. on the server, the user language is not a reactive variable).

@frenchbread
Copy link
Contributor

Added changes to PR #608. Please take a look.

@bajiat
Copy link
Contributor

bajiat commented May 23, 2016

@frenchbread Did this get solved? Or does it need more work?

@frenchbread
Copy link
Contributor

The related branch has been merged. Closing this issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants