17
18
19
20
21
22
23
24
25
26
27
28
29
|
# File 'lib/core/heartbeat.rb', line 17
def send(connector_settings)
doc = {
:last_seen => Time.now
}
if connector_settings.connector_status_allows_sync?
connector_instance = Connectors::REGISTRY.connector(connector_settings.service_type, connector_settings.configuration)
doc[:status] = connector_instance.is_healthy? ? Connectors::ConnectorStatus::CONNECTED : Connectors::ConnectorStatus::ERROR
message = "Health check for 3d party service failed for connector [#{connector_settings.id}], service type [#{connector_settings.service_type}]. Check the application logs for more information."
doc[:error] = doc[:status] == Connectors::ConnectorStatus::ERROR ? message : nil
end
Core::ElasticConnectorActions.update_connector_fields(connector_settings.id, doc)
end
|