Log Pelaporan

Halaman ini menjelaskan cara menggunakan Infrastruktur Layanan untuk mengaktifkan layanan terkelola guna mengirim log ke project produsen layanan dan konsumen layanan.

Service Control API menerima data log terstruktur atau tidak terstruktur, yang dikelompokkan dan diteruskan ke Cloud Logging. Anda dan pengguna layanan terkelola dapat menggunakan konsol Google Cloud dan Konsol Google API untuk melihat data log, atau menggunakan Cloud Logging API untuk mengakses data secara terprogram.

Meskipun Logging saja memungkinkan layanan terkelola membuat log untuk digunakan oleh Anda sebagai developer layanan terkelola, Service Control API juga memungkinkan Anda membuat log yang ditujukan untuk pengguna Anda. Hal ini memungkinkan pengguna memahami dan mendiagnosis penggunaan layanan terkelola Anda.

Mengonfigurasi log

Sebelum mengirim log ke Service Control API, Anda perlu menentukan tiga bit informasi yang berbeda dalam konfigurasi layanan:

  • Nama log: Anda dapat memiliki satu atau beberapa log yang berbeda. Setiap log diidentifikasi dengan nama unik. Setiap log memungkinkan Anda mengisolasi berbagai jenis data jika hal itu memudahkan visualisasi atau penggunaan data.

  • Resource yang dimonitor: Resource yang dimonitor mewakili entitas cloud yang menghasilkan beberapa data logging. Untuk menentukan resource yang dipantau dalam konfigurasi layanan, lihat monitored_resource.proto untuk mengetahui spesifikasi teknisnya. Sebaiknya gunakan resource yang dipantau yang sama untuk pemantauan dan logging.

  • Konfigurasi log: Memungkinkan Anda menentukan resource yang dipantau yang terkait dengan streaming log dan project produsen layanan atau konsumen layanan tempat setiap log harus dikirim. Untuk mengonfigurasi pengaitan log, lihat logging.proto untuk mengetahui spesifikasi teknisnya.

Dalam contoh konfigurasi layanan berikut, log activity_log dikonfigurasi untuk dikirim ke konsumen layanan.

# The definition of the monitored resource to be used.
monitored_resources:
- type: library.appspot.com/Branch
  description: A library branch
  display_name: Library Branch
  launch_stage: ALPHA
  labels:
  - key: resource_container
    description: The Google Cloud resource container (ie. project id) for
    the branch.
  - key: location
    description: The Google Cloud region the branch is located.
  - key: branch_id
    description: The ID of the branch.

# The log name to be used.
logs:
- name: activity_log

# The logging configuration.
logging:
  consumer_destinations:
  - monitored_resource: library.appspot.com/Branch
    logs:
    - activity_log

Setelah menulis konfigurasi tersebut, Anda harus mengikuti artikel Mengelola Konfigurasi Layanan dan Mengelola Peluncuran Layanan untuk mendorong konfigurasi layanan ke Service Management API, yang akan mengonfigurasi resource yang dipantau di Cloud Logging.

Log pelaporan

Setelah push konfigurasi layanan selesai, Anda dapat memanggil Service Control API untuk melaporkan entri log. Contoh berikut menggunakan perintah gcurl untuk menunjukkan panggilan. Untuk mempelajari cara menyiapkannya, lihat Mulai Menggunakan Service Control API.

gcurl -d "{
  'operations': [ {
    'operationId': 'e8bf36ef-f9b5-4274-b4f9-079a3731e6e5',
    'operationName': 'New book arrived',
    'consumerId': 'projects/library-consumer',
    'startTime': '`date +%FT%T%:z`',
    'endTime': '`date +%FT%T%:z`',
    'labels': {
      'location': 'us-east1',
      'branch_id': 'my-test-library-branch'
    },
    'logEntries': [ {
      'severity': 'INFO',
      'textPayload': 'new book arrived',
      'name': 'activity_log'
    } ]
  } ]
}" https://servicecontrol.googleapis.com/v1/services/endpointsapis.appspot.com:report