Openflow Connector for Salesforce Bulk API : Résolution des problèmes¶
Note
Ce connecteur est soumis aux conditions d’utilisation de Snowflake Connector.
Ce chapitre décrit comment dépanner le Openflow Connector for Salesforce Bulk API.
Surveillance¶
Pour suivre la quantité de données synchronisées de Salesforce vers Snowflake, interrogez la table des événements. L’exemple de requête suivant récupère les journaux pertinents des 30 dernières minutes :
SELECT
timestamp,
Deployment_ID,
Runtime_Key,
parsed_log:level as log_level,
parsed_log:loggerName as logger,
parsed_log:formattedMessage as message,
parsed_log
FROM (
SELECT
timestamp,
resource_attributes:"openflow.dataplane.id" as Deployment_ID,
resource_attributes:"k8s.namespace.name" as Runtime_Key,
TRY_PARSE_JSON(value) as parsed_log
FROM OPENFLOW.TELEMETRY.EVENTS
WHERE true
AND timestamp > dateadd('minutes', -30, sysdate())
AND record_type = 'LOG'
AND resource_attributes:"k8s.namespace.name" like 'runtime-%'
ORDER BY timestamp DESC
)
WHERE true
AND logger = 'org.apache.nifi.processors.standard.LogMessage'
AND message LIKE '%SALESFORCE_BULK_API%';
Résolution des problèmes¶
Utilisez les informations suivantes pour résoudre les problèmes liés au connecteur.
Vérifier l’état du connecteur¶
Vous pouvez examiner l’état du connecteur pour vous assurer que les données sont répliquées comme prévu. Le connecteur conserve un état des opérations actuelles et passées pour s’assurer qu’aucun changement Salesforce n’est manqué et pour réessayer les requêtes de tâches en masse si des échecs se produisent.
Pour voir l’état :
Faites un clic droit sur le canevas et sélectionnez. Controller services.
Localisez le service du contrôleur nommé Salesforce Bulk Jobs State.
Dans le menu Salesforce Bulk Jobs State, cliquez sur View state.
L’état est un ensemble de paires clé/valeur où la clé est de type objet Salesforce. Par exemple, l’état de l’objet Account peut ressembler à l’exemple suivant :
{"previousLast":"2025-09-30T09:41:23.484406926Z","currentLast":"2025-09-30T09:41:23.484406926Z","status":"COMPLETED"}
Le status peut être l’un des suivant :
IN_PROGRESSCOMPLETEDFAILEDABORTED
Si le statut est IN_PROGRESS, un FlowFile est toujours en cours de traitement pour ce type d’objet.
Prudence
Ne supprimez pas les fichiers de flux manuellement. Cela peut entraîner le maintien d’une tâche dans le statut IN_PROGRESS indéfiniment, car l’état ne peut pas être mis à jour manuellement.
Si cela se produit, vous devez effectuer un rechargement complet pour ce type d’objet.
Forcer un chargement complet pour un type d’objet donné¶
Pour forcer le connecteur à effectuer une actualisation complète pour un ou plusieurs types d’objets :
Arrêtez tous les processeurs du flux.
Assurez-vous qu’aucun FlowFiles actif est en cours de traitement.
Faites un clic droit sur le canevas et sélectionnez. Disable all controller services.
Accédez à Controller services et ouvrez l’état du service du contrôleur nommé Salesforce Bulk Jobs State.
Effectuez au choix une de ces actions :
Sélectionnez Clear state pour effacer tout l’état. Cela force un chargement complet de tous les types d’objets configurés récupérés par le connecteur.
Sélectionnez l’icône de corbeille à côté d’un type d’objet spécifique pour effacer l’état d’un type d’objet spécifique uniquement. Cela force un chargement complet de ce type d’objet spécifique lors de la prochaine exécution du connecteur.
Dans la zone de préparation, cliquez avec le bouton droit de la souris, sélectionnez Enable all controller services, puis démarrez tous les processeurs.
Si un type d’objet reste dans le statut IN_PROGRESS¶
Si l’état d’un type d’objet donné reste à IN_PROGRESS et s’il n’y a aucun FlowFiles actif pour ce type d’objet, un FlowFile peut avoir été supprimé manuellement avant la mise à jour du statut.
Dans ce cas, vous devez effectuer un chargement complet pour ce type d’objet afin de vous assurer que le connecteur capture tous les événements.
Si l’état reste à IN_PROGRESS et si aucun FlowFiles actif n’a été supprimé manuellement, contactez le Support Snowflake.