Skip Navigation
Show nav
Dev Center
  • Get Started
  • ドキュメント
  • Changelog
  • Search
  • Get Started
    • Node.js
    • Ruby on Rails
    • Ruby
    • Python
    • Java
    • PHP
    • Go
    • Scala
    • Clojure
    • .NET
  • ドキュメント
  • Changelog
  • More
    Additional Resources
    • Home
    • Elements
    • Products
    • Pricing
    • Careers
    • Help
    • Status
    • Events
    • Podcasts
    • Compliance Center
    Heroku Blog

    Heroku Blog

    Find out what's new with Heroku on our blog.

    Visit Blog
  • Log inorSign up
View categories

Categories

  • Heroku のアーキテクチャ
    • Dyno (アプリコンテナ)
      • Dyno Management
      • Dyno Concepts
      • Dyno Behavior
      • Dyno Reference
      • Dyno Troubleshooting
    • スタック (オペレーティングシステムイメージ)
    • ネットワーキングと DNS
    • プラットフォームポリシー
    • プラットフォームの原則
  • Developer Tools
    • コマンドライン
    • Heroku VS Code Extension
  • デプロイ
    • Git を使用したデプロイ
    • Docker によるデプロイ
    • デプロイ統合
  • 継続的デリバリーとインテグレーション
    • 継続的統合
  • 言語サポート
    • Node.js
      • Working with Node.js
      • Node.js Behavior in Heroku
      • Troubleshooting Node.js Apps
    • Ruby
      • Rails のサポート
      • Bundler の使用
      • Working with Ruby
      • Ruby Behavior in Heroku
      • Troubleshooting Ruby Apps
    • Python
      • Working with Python
      • Python でのバックグランドジョブ
      • Python Behavior in Heroku
      • Django の使用
    • Java
      • Java Behavior in Heroku
      • Working with Java
      • Maven の使用
      • Spring Boot の使用
      • Troubleshooting Java Apps
    • PHP
      • PHP Behavior in Heroku
      • Working with PHP
    • Go
      • Go の依存関係管理
    • Scala
    • Clojure
    • .NET
      • Working with .NET
  • データベースとデータ管理
    • Heroku Postgres
      • Postgres の基礎
      • Postgres スターターガイド
      • Postgres のパフォーマンス
      • Postgres のデータ転送と保持
      • Postgres の可用性
      • Postgres の特別なトピック
      • Migrating to Heroku Postgres
    • Heroku Data For Redis
    • Apache Kafka on Heroku
    • その他のデータストア
  • AI
    • Working with AI
    • Heroku Inference
      • Inference API
      • Quick Start Guides
      • AI Models
      • Inference Essentials
    • Vector Database
    • Model Context Protocol
  • モニタリングとメトリクス
    • ログ記録
  • アプリのパフォーマンス
  • アドオン
    • すべてのアドオン
  • 共同作業
  • セキュリティ
    • アプリのセキュリティ
    • ID と認証
      • シングルサインオン (SSO)
    • Private Space
      • インフラストラクチャネットワーキング
    • コンプライアンス
  • Heroku Enterprise
    • Enterprise Accounts
    • Enterprise Team
    • Heroku Connect (Salesforce 同期)
      • Heroku Connect の管理
      • Heroku Connect のリファレンス
      • Heroku Connect のトラブルシューティング
  • パターンとベストプラクティス
  • Heroku の拡張
    • Platform API
    • アプリの Webhook
    • Heroku Labs
    • アドオンのビルド
      • アドオン開発のタスク
      • アドオン API
      • アドオンのガイドラインと要件
    • CLI プラグインのビルド
    • 開発ビルドパック
    • Dev Center
  • アカウントと請求
  • トラブルシューティングとサポート
  • Salesforce とのインテグレーション
  • Heroku Enterprise
  • Heroku Connect (Salesforce 同期)
  • Heroku Connect のリファレンス
  • Heroku Connect トリガーログ

Heroku Connect トリガーログ

日本語 — Switch to English

最終更新日 2022年12月08日(木)

Table of Contents

  • 概要
  • トリガーログへのアクセス
  • トリガーログの保持
  • テーブルの構造
  • 状態
  • トリガーログのトラブルシューティング

Heroku Postgres のレコードに加えられた変更はトリガーログに捕捉されます。Heroku Connect では、トリガーログを使用してデータを Salesforce に送信します。この記事は、トリガーログのしくみとその読み方について理解するために役立ちます。

概要

トリガーログは、Heroku Connect アドオン用に設定されたスキーマの 2 つのテーブルに格納されます。新しい変更は、Connect によって _trigger_log​ テーブルに捕捉されます。処理されたレコードは _trigger_log​ テーブルから _trigger_log_archive​ に移動します。

捕捉されたすべての読み取り/書き込みの変更は、Heroku Connect によって、アドオンごとに 1 つのプロセスで処理され、Salesforce に送信されます。個々のトリガーログエントリは、Heroku Connect による処理が済んだかどうかを状態で示しています。トリガーログには読み取り専用マッピングの変更も捕捉されますが、Heroku Connect ではこれらの変更に対しては何も行いません。

マッピングを読み取り/書き込みから読み取り専用に変更しても、すでに捕捉された変更については Salesforce への送信を防ぐことはできません。

捕捉された変更

マップされた読み取り/書き込みテーブルで INSERT が発生すると、すべての列​が捕捉されます。Salesforce への INSERT が成功した後、Connect は新しく作成されたレコードの sfid​ を捕捉して、Postgres 内の起点のテーブルに書き戻します。

マップされた読み取り/書き込みテーブルで UPDATE が発生すると、トリガーは変更の前後で行の値を比較します。変更された値のみ​を記録します。

DELETE 操作は削除のみを記録します。

マップされた読み取り/書き込みテーブルで TRUNCATE 操作が発生した場合、レコードは Salesforce で削除されません​。マップされたテーブルのトリガーは、INSERT、UPDATE、DELETE の各操作にのみ適用されます。TRUNCATE 操作は _trigger_log​ テーブルに捕捉されません。ご自身で個別に Salesforce のレコードを削除してください。

Connect はトランザクション境界内の変更を監視できず、データベースで発生したとおりの厳密な書き込み順序を強制することはできません。

トリガーログへのアクセス

heroku pg:psql​ を使用して、データベースの _trigger_log​ テーブルを表示できます。

SELECT table_name, record_id, action, sf_message
    FROM salesforce._trigger_log;

トリガーログの保持

デモ版の Heroku Connect アドオンプランでは、変更を _trigger_log_archive​ テーブルに 7 日間保持する一方で、有料アドオンでは変更を 30 日間アーカイブに保持します。30 日を過ぎた変更は Connect によって自動的にパージされます。

テーブルの構造

_trigger_log​ テーブルと _trigger_log_archive​ テーブルの構造はどちらも同じです。

列 型 目的
id 整数 テーブルのプライマリキー。変更の順序の決定にも使用されます。
created_at タイムスタンプ 変更が捕捉された日時
updated_at タイムスタンプ Heroku Connect によってエントリが変更された日時
processed_at タイムスタンプ Heroku Connect がエントリの処理を終了した日時
table_name varchar(128) 変更の捕捉元のテーブル
record_id 整数 変更が捕捉されたレコードの id​
sfid varchar(18) 捕捉された変更の Salesforce ID (該当する場合)
action varchar(7) 捕捉された操作: INSERT、UPDATE または DELETE
state varchar(8) レコードの現在の状態 (参照: ​状態)​
values テキスト 変更に関して捕捉された hstore でエンコードされた列の値
sf_message テキスト 書き込み中にエラーが発生したときに Salesforce から返されたエラーメッセージ(参照: ​Heroku Connect の書き込みエラー)​
old テキスト 変更前に捕捉された古い値 (hstore 形式でエンコード)

状態

トリガーログは、各エントリの状態を state​ フィールドで追跡します。各エントリの終了状態は SUCCESS​、MERGED​、IGNORED​、FAILED​、READONLY​ のいずれかです。さらに、このエントリは NEW​、PENDING​、IGNORE​、BULKSENT​ の各状態を経過する場合があります。

状態 説明
SUCCESS​ 行は Salesforce に正常に書き込まれました。
MERGED​ これは、マージ書き込みアルゴリズム​ にのみ適用されます。1 つのポーリング間隔内で 1 行に複数の変更が加えられました。すべての変更は、Connect によって Salesforce に対する 1 つの API リクエストにマージされます。
IGNORED​ Connect は Salesforce にレコードを書き込もうとしませんでした。この状態は、レコードを更新するが、Salesforce に再同期されるデータ (マップされていないフィールド) を実際には変更しない場合に発生する可能性があります。
FAILED​ Connect はレコードを書き込もうとしましたが、失敗しました。sf_message​ 列に説明が含まれています。
READONLY​ 読み取り専用テーブルから捕捉された変更です。Connect ではこれらの変更に対して何も行われません。
NEW​ 新しく捕捉された変更を処理する準備ができています。
IGNORE​ Salesforce に再同期される、新しく捕捉された変更 (マップされていないフィールド) です。
PENDING​ この変更は Connect によって処理中です。
BULKSENT​ 一括書き込みが進行中ですが、まだ完了していません。

トリガーログのトラブルシューティング

トリガーログは、書き込みエラーのトラブルシューティングに役立ちます。詳細は、「Heroku Connect の書き込みエラー​」を参照してください。

関連カテゴリー

  • Heroku Connect のリファレンス
マッピング状態のリファレンス Heroku Connect ダッシュボード

Information & Support

  • Getting Started
  • Documentation
  • Changelog
  • Compliance Center
  • Training & Education
  • Blog
  • Support Channels
  • Status

Language Reference

  • Node.js
  • Ruby
  • Java
  • PHP
  • Python
  • Go
  • Scala
  • Clojure
  • .NET

Other Resources

  • Careers
  • Elements
  • Products
  • Pricing
  • RSS
    • Dev Center Articles
    • Dev Center Changelog
    • Heroku Blog
    • Heroku News Blog
    • Heroku Engineering Blog
  • Twitter
    • Dev Center Articles
    • Dev Center Changelog
    • Heroku
    • Heroku Status
  • Github
  • LinkedIn
  • © 2025 Salesforce, Inc. All rights reserved. Various trademarks held by their respective owners. Salesforce Tower, 415 Mission Street, 3rd Floor, San Francisco, CA 94105, United States
  • heroku.com
  • Legal
  • Terms of Service
  • Privacy Information
  • Responsible Disclosure
  • Trust
  • Contact
  • Cookie Preferences
  • Your Privacy Choices