структурированное ведение журнала из облачной функции

Итак, я уже давно бился об этом, подумал, что спрошу здесь.

Можно ли использовать структурированное ведение журнала из облачной функции?

Агенты журнала и метрик недоступны в CF, и я хотел бы получить более полные данные в наших журналах StackDriver (в основном для использования некоторых журналов). на основе показателей).

Есть ли у кого-нибудь какие-нибудь указания относительно того, что возможно без дополнительного оборудования, доступного с использованием агента журнала?

1
задан 30 October 2018 в 17:36
1 ответ

Я опубликовал этот вики-ответ сообщества, чтобы сделать рекомендацию, предоставленную @Andrew Haines, более заметной. Ответ на этот вопрос был дан здесь. Краткое описание решения приведено ниже:

// global
const { Logging } = require("@google-cloud/logging");
const logging = new Logging();
const Log = logging.log("cloudfunctions.googleapis.com%2Fcloud-functions");
const LogMetadata = {
  severity: "INFO",
  type: "cloud_function",
  labels: {
  function_name: process.env.FUNCTION_TARGET,
  project: process.env.GCP_PROJECT,
  region: JSON.parse(process.env.FIREBASE_CONFIG).locationId
}
};
 
// per request
const data = { FOO: "BAR" };
const traceId = req.get("x-cloud-trace-context").split("/")[0];
const metadata = {
  ...LogMetadata,
  severity: 'INFO',
  trace: `projects/${process.env.GCLOUD_PROJECT}/traces/${traceId}`,
  labels: {
    execution_id: req.get("function-execution-id")
  }
};
Log.write(Log.entry(metadata, data));

Значения для серьезности можно найти здесь.

DEFAULT (0) The log entry has no assigned severity level.
DEBUG   (100) Debug or trace information.
INFO    (200) Routine information, such as ongoing status or performance.
NOTICE  (300) Normal but significant events, such as start up, shut down, or a configuration change.
WARNING (400) Warning events might cause problems.
ERROR   (500) Error events are likely to cause problems.
CRITICAL    (600) Critical events cause more severe problems or outages.
ALERT   (700) A person must take an action immediately.
EMERGENCY   (800) One or more systems are unusable.
1
ответ дан 12 February 2021 в 12:36

Теги

Похожие вопросы