Когда я запускаю скрипт в качестве облачной функции, он может найти имя задания, но когда я запускаю его в облачных заданиях, он не может найти имя задания. < /p>
Что именно я делаю неправильно? < /p>
httpRequest: {1}
insertId: "8vr1cwfi77fef"
jsonPayload: {
@type: "type.googleapis.com/google.cloud.scheduler.logging.AttemptFinished"
jobName: "projects/api-data-pod/locations/us-central1/jobs/mouse-recording"
status: "NOT_FOUND"
targetType: "HTTP"
url: "https://us-central1-run.googleapis.com/apis/run.googleapis.com/v1/namespaces/api-data-pod/jobs/mouseflowrecording:run"
}
logName: "projects/api-data-pod/logs/cloudscheduler.googleapis.com%2Fexecutions"
receiveTimestamp: "2022-08-02T11:54:04.664184360Z"
resource: {
labels: {3}
type: "cloud_scheduler_job"
}
severity: "ERROR"
timestamp: "2022-08-02T11:54:04.664184360Z"
}
< /code>
import requests
import json
import pandas as pd
import pandas_gbq
from google.cloud import bigquery
from requests.auth import HTTPBasicAuth
#import schedule
#import time
def rec(request):
r = requests.get("https://api-eu.mouseflow.com/websites/e768ed54-c09b-48dc-bf49-beda12697013/recordings",
auth=HTTPBasicAuth("*************", "********************"))
if r.status_code == 200:
parsed = json.loads(r.text)
print(json.dumps(parsed['recordings'], indent=4, sort_keys=True))
df = pd.DataFrame.from_records(parsed['recordings'])
#print(df.dtypes)
#df.to_csv('mousedata3.csv')#
try:
temp_csv_string = df.to_csv(sep=";", index=False)
temp_csv_string_IO = StringIO(temp_csv_string)
# create new dataframe from string variable
new_df = pd.read_csv(temp_csv_string_IO, sep=";")
# this new df can be uploaded to BQ with no issues
new_df.to_gbq('Mouseflow.Mouseflow_Recording', if_exists='replace', project_id='api-data-pod')
return f'Successful'
except Exception as err:
return f'Upload to BigQuery failed: {err}'
else:
return f'API request error occurred: Status code {r.status_code}'
rec(requests.request)
< /code>
Единственная разница с кодом облачной функции заключается в том, что у меня нет конца функции, поскольку это не требуется. Так что это не в конце моего кода: rec (requests.request)
Когда я запускаю скрипт в качестве облачной функции, он может найти имя задания, но когда я запускаю его в облачных заданиях, он не может найти имя задания. < /p> Что именно я делаю неправильно? < /p> [code]httpRequest: {1} insertId: "8vr1cwfi77fef" jsonPayload: { @type: "type.googleapis.com/google.cloud.scheduler.logging.AttemptFinished" jobName: "projects/api-data-pod/locations/us-central1/jobs/mouse-recording" status: "NOT_FOUND" targetType: "HTTP" url: "https://us-central1-run.googleapis.com/apis/run.googleapis.com/v1/namespaces/api-data-pod/jobs/mouseflowrecording:run" } logName: "projects/api-data-pod/logs/cloudscheduler.googleapis.com%2Fexecutions" receiveTimestamp: "2022-08-02T11:54:04.664184360Z" resource: { labels: {3} type: "cloud_scheduler_job" } severity: "ERROR" timestamp: "2022-08-02T11:54:04.664184360Z" } < /code> import requests
import json
import pandas as pd
import pandas_gbq
from google.cloud import bigquery
from requests.auth import HTTPBasicAuth
#import schedule
#import time
def rec(request): r = requests.get("https://api-eu.mouseflow.com/websites/e768ed54-c09b-48dc-bf49-beda12697013/recordings",
#df.to_csv('mousedata3.csv')# try: temp_csv_string = df.to_csv(sep=";", index=False) temp_csv_string_IO = StringIO(temp_csv_string) # create new dataframe from string variable new_df = pd.read_csv(temp_csv_string_IO, sep=";") # this new df can be uploaded to BQ with no issues new_df.to_gbq('Mouseflow.Mouseflow_Recording', if_exists='replace', project_id='api-data-pod') return f'Successful' except Exception as err: return f'Upload to BigQuery failed: {err}' else: return f'API request error occurred: Status code {r.status_code}' rec(requests.request) < /code> Единственная разница с кодом облачной функции заключается в том, что у меня нет конца функции, поскольку это не требуется. Так что это не в конце моего кода: rec (requests.request) [/code].
Когда я запускаю скрипт в качестве облачной функции, он может найти имя задания, но когда я запускаю его в облачных заданиях, он не может найти имя задания.
Что именно я делаю неправильно?
httpRequest: {1}
insertId: 8vr1cwfi77fef
jsonPayload: {...
Когда я запускаю скрипт в качестве облачной функции, он может найти имя задания, но когда я запускаю его в облачных заданиях, он не может найти имя задания.
Что именно я делаю неправильно?
httpRequest: {1}
insertId: 8vr1cwfi77fef
jsonPayload: {...
Я смотрю на использование облачного планировщика, чтобы запустить ежедневное выполнение приложения Python в Cloud Run. Приложение получает данные из API третьей стороны и вставляет его в BigQuery. Единственная проблема заключается в том, что в...
Я развертываю облачную функцию Python Google (Gen2) (недавно переименованную в функцию Cloud Run), которая прекрасно работает с той же структурой и логикой до изменений, но сейчас просто не работает.
И я проверил, что сервер отлично работает...