On Sunday, 5 November 2017 17:06:37 UTC+1, Peter Camilleri wrote:
>
>
> I didnt choose an instance class. How do I do this? Isn't that more 
> something you do in the compute engine? Not the app engine?
>
> I have recently tried to specify resources, e.g. only 1 instance, minimal 
> ram, etc. but I dont did this after I found out my costs were unusually high
>

App Engine standard environment also supports different instances classes 
<https://cloud.google.com/appengine/docs/about-the-standard-environment#instance_classes>
 
with different pricing <https://cloud.google.com/appengine/pricing>. You 
define the instance classes (instance_class) and the type of scaling in the 
*app.yaml* files of your GAE app (see An Overview of App Engine 
<https://cloud.google.com/appengine/docs/standard/python/an-overview-of-app-engine>,
 
How Instances are Managed 
<https://cloud.google.com/appengine/docs/standard/python/how-instances-are-managed>,
 
Managing App Resources 
<https://cloud.google.com/appengine/docs/standard/python/console/managing-resources>,
 
and the app.yaml Reference 
<https://cloud.google.com/appengine/docs/standard/python/config/appref>). 
If I remember correctly, the defaults will be the cheapest instance class 
(F1) and auto-scaling. There can be many reasons why an instance would be 
automatically started (one of the big selling points of App Engine 
actually), so shutting instances down manually might have no persistent 
effect at all. Also note that for apps in standard environment, the charges 
will always be calculated on base of the F1 price, where the higher 
instance classes are priced as a multiple of the F1 price, i.e. if you have 
used F4, their instance hours will be 4 times of what they actually have 
been, but with the price of F1.

NB: Since each app comes with a free tier of 28 instance hours per day (F1 
or B1), an un-used app should remain for free, unless there is something 
wrong in your configuration as explained in my earlier post. In order to 
learn more about this, it makes sense to check the logging of the app to 
see what requests where handled by the billed instances. Maybe it is 
unexpected traffic from outside (a crawler?), a cron-job that runs every 
now and then, or there is a bug in a task in one of your task-queues and 
the task is retried indefinitely.

On the other hand, App Engine flexible environment are deployed to virtual 
machine types as specified, and the billing is different from standard 
environment, see Pricing - Flexible environment instances 
<https://cloud.google.com/appengine/pricing#flexible-environment-instances>.

It would help if you could tell us which version of App Engine you have in 
use (programming language, and whether standard or flexible environment). 
Above I have linked to the Python version.
 

>  
>
>> or that there are too many idle instances running, or forgotten 
>> cron-jobs, etc. Best approach is to study all the expenses for the billing 
>> account where the costs were charged and identify the big hitters.
>>
>
> How do I find idle instances? I found some older instances of apps were 
> running so I deleted them. I think that is what you are referring to. IS 
> this normal?
>  
>

You can find active and idle instances on your App Engine > Dashboard 
<https://console.cloud.google.com/appengine?duration=P30D&graph=AE_INSTANCES> 
or App Engine > Instances 
<https://console.cloud.google.com/appengine/instances?duration=P30D&graph=AE_INSTANCES>.
 
Toggle the version and chart type ("Instances") above the charts, and the 
period between 1 hour and 30 days. It not only shows the instances, but you 
can also access the requests logs for each instance to figure out what is 
causing the instances to not be shut down (as mentioned earlier).
 

> Yea this is where I found out I was paying 50$ for resources. Although I 
> dont find the descriptions to be very helpful, which is why I came here 
> looking for help.
>

If you want, you could copy-paste the lines here. But remove all project 
IDs first and anything else you consider sensitive information.
 

>
> Yes, I also have a cloud SQL instance. But it is literally just 1 database 
> with 3 tables, each with about 4-5 fields (these are from tutorials). So 
> it's realistically a tiny database. but i still got charged 15$ for using 
> that. What I would like is a breakdown of where my money went, because all 
> I know is that I lost 15$ to CloudSQL but have no idea why.
>

Different from Cloud Datastore, Cloud SQL is also charging for instances 
(as their is a managed VM being the database), and maybe also CPU and 
memory if you have dedicated-core instances. See Cloud SQL Pricing 
<https://cloud.google.com/sql/pricing>. Unfortunatley, I'm not very 
familiar with Cloud SQL, so I can't tell how you could save money for 
unused Cloud SQL resources, but probably disabling its instance might at 
least save the instance costs until you actually need it.

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at https://groups.google.com/group/google-appengine.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-appengine/b66822d9-fcb1-4954-b54a-d15f6ee71f47%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to