2010-10-25 14 views
5

Bazı verileri analiz etmek için Google App Engine harita akışını kullanıyorum. Yaptığım birkaç geri sayımı, işlenmemiş albümümden basit bir Google grafiği oluşturmak istiyorum. Ortaya çıkan sayaçlara geri bildirime nasıl erişirim?Google App Engine harita haritasının python sürümünde, sayaçlara done_callback'den nasıl erişirsiniz?

#The map method 
def count_created_since(entity): 
    now = datetime.datetime.now() 
    delta = now-entity.created 

    #analyze last 12 weeks 
    for x in range(12): 
    start = 7*x 
    stop = 7*(x+1) 

    if delta.days >= start and delta.days < stop: 
     #The counters 
     yield op.counters.Increment(str(x)+" weeks ago") 


def my_callback(request): 
    # fetch counter results to create a simple Google chart url 

cevap

5

Bir MapreduceState'scounter_map özelliğiyle karşı erişen olabilir.

from mapreduce import model 
state = model.MapreduceState.get_by_job_id(your_job_id) 
# counters live in state.counters_map 

sayaçları erişme hakkında kadar önce var posta listesinde bir discussion bir ay oldu ya.

+0

Teşekkürler, ancak geri aramadaki job_id öğesini nasıl belirleyebilirim? POST üzerinden geri arama için parametre olarak geçiriliyor mu? – Chris

+0

"job_id" adlı bir parametre olarak iletildi. –

+0

@Chris @Robert, bu soruyu cevapladığınızda nasıl geçildiğini bilmiyorum, ancak bugün başlıkta, “Mapreduce-Id **” isimli bir değişkende geçiriliyor. –