user1403505
user1403505

Reputation: 1005

App Engine for cloud monitoring metrics throwing 500 error when writing to big query

I want to export Metrics from Cloud Monitoring to Big Query and google has given a solution on how to do this. I am following this this article.

I have downloaded the code from github and I am able to successfully deploy and run the application (python2.7),

I have given the aggregate alignment period as 86400s (I want to aggregate metrics per day starting from 1st July) One of the app-engines the write-metrics app engine which writes the metrics to the big query, by getting the api response as a pub-sub message is always throwing me these errors:

> Exceeded soft memory limit of 256 MB with 270 MB after servicing 5 requests total. Consider setting a larger instance class in app.yaml.

> While handling this request, the process that handled this request was found to be using too much memory and was terminated. This is likely to cause a new process to be used for the next request to your application. If you see this message frequently, you may have a memory leak in your application or may be using an instance with insufficient memory. Consider setting a larger instance class in app.yaml.

The above is 500 error and very frequent and I find that duplicate records are getting inserted in the table in BigQuery still and also this one below

DeadlineExceededError: The overall deadline for responding to the HTTP request was exceeded.

The app engine logs frequently show POST with codes 500 and 200

enter image description here

In app engine(standard) I have added the scaling as automatic and set in app.yaml as below:

automatic_scaling:
  target_cpu_utilization: 0.65
  min_instances: 5
  max_instances: 25
  min_pending_latency: 30ms
  max_pending_latency: automatic
  max_concurrent_requests: 50

but this seems to have no effect. I am very new to app engine,google-cloud and its stackdriver metrics.

Upvotes: 0

Views: 427

Answers (1)

user1403505
user1403505

Reputation: 1005

This change makes it work

instance_class: F4_1G

This needs to be as a independent tag and previously i had made the mistake of putting under the automatic scaling: so it gave illegal modifier

Upvotes: 1

Related Questions