CANNOT_FIND_ACCOUNT sur tous les konnectors

résolu

#1

Salut !

Quand j’essaye de me connecter sur n’importe quel Konnector, j’ai cette erreur :

Un problème semble s'être produit pendant la tentative de connexion à Sosh. Merci de revérifier vos informations de compte ou de consulter notre aide en ligne.

Et dans les logs, j’ai :

level=error msg="Account c1fc892046d672c516571a049b02d25a does not exist" domain=cozy.example.com job_id=c1fc892046d672c516571a049b035b01 nspace=jobs slug=sosh worker_id=konnector/1
level=warning msg="Error caught by BaseKonnector" domain=cozy.example.com job_id=c1fc892046d672c516571a049b035b01 nspace=jobs slug=sosh worker_id=konnector/1
level=warning msg=CANNOT_FIND_ACCOUNT domain=cozy.example.com job_id=c1fc892046d672c516571a049b035b01 nspace=jobs slug=sosh worker_id=konnector/1
level=error msg=CANNOT_FIND_ACCOUNT domain=cozy.example.com job_id=c1fc892046d672c516571a049b035b01 nspace=jobs slug=sosh worker_id=konnector/1
level=warning msg="Error while performing job: CANNOT_FIND_ACCOUNT (retry in 60.259029ms)" domain=cozy.example.com job_id=c1fc892046d672c516571a049b035b01 nspace=jobs worker_id=konnector/1
level=error msg="Account c1fc892046d672c516571a049b02d25a does not exist" domain=cozy.example.com job_id=c1fc892046d672c516571a049b035b01 nspace=jobs slug=sosh worker_id=konnector/1
level=warning msg="Error caught by BaseKonnector" domain=cozy.example.com job_id=c1fc892046d672c516571a049b035b01 nspace=jobs slug=sosh worker_id=konnector/1
level=warning msg=CANNOT_FIND_ACCOUNT domain=cozy.example.com job_id=c1fc892046d672c516571a049b035b01 nspace=jobs slug=sosh worker_id=konnector/1
level=error msg=CANNOT_FIND_ACCOUNT domain=cozy.example.com job_id=c1fc892046d672c516571a049b035b01 nspace=jobs slug=sosh worker_id=konnector/1
level=info msg="Konnector failure: CANNOT_FIND_ACCOUNT" account_id=c1fc892046d672c516571a049b02d25a domain=cozy.example.com job_id=c1fc892046d672c516571a049b035b01 nspace=jobs slug=sosh worker_id=konnector/1
level=error msg="error while performing job: CANNOT_FIND_ACCOUNT" domain=cozy.example.com job_id=c1fc892046d672c516571a049b035b01 nspace=jobs worker_id=konnector/1

Pour l’instant, j’ai essayé les Konnectors Ameli, Cdiscount, impots.gouv.fr et Sosh.
Je ne comprends pas trop ce qu’il se passe, je suis encore perdu dans la doc de Cozy.
Quelqu’un aurait une idée ?
Merci.


#2

Hello @Naji,

bienvenue à bord :smile:,

Dans ces journaux, est-ce que tu as vraiment domain=cozy.example.com ou est-ce que tu as édité pour masquer l’adresse de ton serveur ? Si tu vois vraiment cozy.example.com, je pense qu’il y a un souci de configuration, qui empêche le connecteur de communiquer avec ton serveur afin de récupérer les identifiants pour se connecter aux services.


#3

Oui en effet j’ai anonymisé les logs par sécurité. Donc je vois bien mon vrai domaine. ^^


#4

Flûte, ça n’est pas ça.

Lorsqu’un connecteur démarre, il envoie des requêtes à cozy-stack pour récupérer les identifiants du service. Cela correspond à des requêtes GET /data/io.cozy.accounts/… envoyées à la stack.
Il faudrait voir si tu vois passer ce type de requêtes.
Par contre, en auto-hébergement, je ne sais pas si les requêtes sont envoyées directement de nsjail à la stack ou si elles transitent par le reverse proxy, donc je ne sais pas dans quels journaux regarder.
A minima, tu devrais voir des requêtes sur la base io-cozy-acconts dans les journaux de CouchDB.


#5

Je n’ai pas grand chose dans les logs de Cozy, à part ce que j’avais déjà posté.
Dans CouchDB, j’ai uniquement ça qui apparaît concernant les accounts :

[notice] 2018-11-02T09:20:39.172987Z couchdb@127.0.0.1 <0.4722.30> ac4bddb1bf 127.0.0.1:5984 127.0.0.1 cozy GET /cozy6f24cd18535faa406bdb84da7f77671f%2Fio-cozy-accounts/c1fc892046d672c516571a049b029d01 200 ok 2
[notice] 2018-11-02T09:20:42.030846Z couchdb@127.0.0.1 <0.4722.30> aba42344fb 127.0.0.1:5984 127.0.0.1 cozy GET /cozy6f24cd18535faa406bdb84da7f77671f%2Fio-cozy-accounts/c1fc892046d672c516571a049b029d01 200 ok 1

Par ailleurs, je viens de constater une autre erreur sur le konnector Google, qui est peut-être liée (ou pas).
Lorsque j’appuie sur “connecter”, dans la pop-up j’ai cette erreur:

{"errors":[{"status":"404","title":"not_found","detail":"Database does not exist.","source":{}}]}

Peut-être que mon installation est incomplète ?


#6

Des requêtes pour récupérer le compte c1fc892046d672c516571a049b029d01. Mais rien pour les comptes cités dans les erreurs des connecteurs, comme par exemple c1fc892046d672c516571a049b02d25a. Donc il y a bien un souci de communication entre le connecteur et la stack.

Pour avoir plus de journaux, tu peux essayer de passer ton Cozy en mode bavard et relancer les connecteur : cozy-stack instances debug cozy.example.com true (cozy-stack instances debug cozy.example.com false pour retrouver ensuite un niveau moins bavard).

Concernant le connecteur Google, il est particulier puisqu’il importe des contacts. Peut-être faudrait-il que tu lances l’application Contacts pour qu’elle crée les bases de données nécessaires ?


#7

En effet cette fois-ci il est beaucoup plus bavard. Cette fois-ci je n’ai pas enlevé les timetstamp, au cas où ça serait utile.

Nov  2 10:55:30 sd-47961 cozy[57719]: time="2018-11-02T10:55:30+01:00" level=debug msg="request: POST cozy6f24cd18535faa406bdb84da7f77671f%2Fio-cozy-jobs/_find {\"selector\":{\"trigger_id\":\"c1fc892046d672c516571a049b04ef4b\"},\"use_index\":\"by-trigger-id\",\"limit\":50,\"sort\":[{\"trigger_id\":\"desc\"},{\"queued_at\":\"desc\"}]}" domain=cozy.example.com nspace=couchdb
Nov  2 10:55:30 sd-47961 cozy[57719]: time="2018-11-02T10:55:30+01:00" level=debug msg="response: {\"docs\":[\r\n{\"_id\":\"c1fc892046d672c516571a049b052b91\",\"_rev\":\"3-10640faae2db9db11618968f7c626844\",\"domain\":\"cozy.example.com\",\"prefix\":\"cozy6f24cd18535faa406bdb84da7f77671f\",\"worker\":\"konnector\",\"trigger_id\":\"c1fc892046d672c516571a049b04ef4b\",\"message\":{\"konnector\":\"sosh\",\"account\":\"c1fc892046d672c516571a049b04e5aa\",\"folder_to_save\":\"c1fc892046d672c516571a049b04db74\"},\"event\":null,\"manual_execution\":true,\"state\":\"errored\",\"queued_at\":\"2018-11-02T10:54:39.163675316+01:00\",\"started_at\":\"2018-11-02T10:54:39.204410888+01:00\",\"finished_at\":\"2018-11-02T10:54:43.728561366+01:00\",\"error\":\"CANNOT_FIND_ACCOUNT\"},\r\n{\"_id\":\"c1fc892046d672c516571a049b04fb29\",\"_rev\":\"3-34813cad68331838c59bb225ffdc190e\",\"domain\":\"cozy.example.com\",\"prefix\":\"cozy6f24cd18535faa406bdb84da7f77671f\",\"worker\":\"konnector\",\"trigger_id\":\"c1fc892046d672c516571a049b04ef4b\",\"message\":{\"konnector\":\"sosh\",\"account\":\"c1fc892046d672c516571a049b04e5aa\",\"folder_to_save\":\"c1fc892046d672c516571a049b04db74\"},\"event\":null,\"manual_execution\":true,\"state\":\"errored\",\"queued_at\":\"2018-11-02T10:44:50.134617095+01:00\",\"started_at\":\"2018-11-02T10:44:50.20590791+01:00\",\"finished_at\":\"2018-11-02T10:44:54.68341727+01:00\",\"error\":\"CANNOT_FIND_ACCOUNT\"}\r\n],\r\n\"bookmark\": \"g1AAAACeeJyFzLEOwiAYxHHSyclnMHE0NXf4AYXncDcFSrStMWm7-PbK4Ox6-f9uVko19yar_br1yzYN71t-pUd-fvdDYkmd1xCbrdPJ0BrHHuIjpETtq9v93Fyf_rKhSKzRUYNdS7bQVyKIBIMzL2Lp4M0JDMA4fgBPayXy\"}" domain=cozy.example.com nspace=couchdb
Nov  2 10:55:30 sd-47961 cozy[57719]: time="2018-11-02T10:55:30+01:00" level=debug msg="request: POST cozy6f24cd18535faa406bdb84da7f77671f%2Fio-cozy-jobs/ {\"domain\":\"cozy.example.com\",\"prefix\":\"cozy6f24cd18535faa406bdb84da7f77671f\",\"worker\":\"konnector\",\"trigger_id\":\"c1fc892046d672c516571a049b04ef4b\",\"message\":{\"konnector\":\"sosh\",\"account\":\"c1fc892046d672c516571a049b04e5aa\",\"folder_to_save\":\"c1fc892046d672c516571a049b04db74\"},\"event\":null,\"manual_execution\":true,\"state\":\"queued\",\"queued_at\":\"2018-11-02T10:55:30.812089061+01:00\",\"started_at\":\"0001-01-01T00:00:00Z\",\"finished_at\":\"0001-01-01T00:00:00Z\"}" domain=cozy.example.com nspace=couchdb
Nov  2 10:55:30 sd-47961 cozy[57719]: time="2018-11-02T10:55:30+01:00" level=debug msg="response: {\"ok\":true,\"id\":\"c1fc892046d672c516571a049b053611\",\"rev\":\"1-467bd460da545c26f7d134c8ef6137cf\"}" domain=cozy.example.com nspace=couchdb
Nov  2 10:55:30 sd-47961 cozy[57719]: time="2018-11-02T10:55:30+01:00" level=debug msg="ack_consume c1fc892046d672c516571a049b053611 " domain=cozy.example.com nspace=jobs
Nov  2 10:55:30 sd-47961 cozy[57719]: time="2018-11-02T10:55:30+01:00" level=debug msg="request: GET cozy6f24cd18535faa406bdb84da7f77671f%2Fio-cozy-jobs/c1fc892046d672c516571a049b053611 " domain=cozy.example.com nspace=couchdb
Nov  2 10:55:30 sd-47961 cozy[57719]: time="2018-11-02T10:55:30+01:00" level=debug msg="response: {\"_id\":\"c1fc892046d672c516571a049b053611\",\"_rev\":\"1-467bd460da545c26f7d134c8ef6137cf\",\"domain\":\"cozy.example.com\",\"prefix\":\"cozy6f24cd18535faa406bdb84da7f77671f\",\"worker\":\"konnector\",\"trigger_id\":\"c1fc892046d672c516571a049b04ef4b\",\"message\":{\"konnector\":\"sosh\",\"account\":\"c1fc892046d672c516571a049b04e5aa\",\"folder_to_save\":\"c1fc892046d672c516571a049b04db74\"},\"event\":null,\"manual_execution\":true,\"state\":\"queued\",\"queued_at\":\"2018-11-02T10:55:30.812089061+01:00\",\"started_at\":\"0001-01-01T00:00:00Z\",\"finished_at\":\"0001-01-01T00:00:00Z\"}" domain=cozy.example.com nspace=couchdb
Nov  2 10:55:30 sd-47961 cozy[57719]: time="2018-11-02T10:55:30+01:00" level=debug msg="request: PUT cozy6f24cd18535faa406bdb84da7f77671f%2Fio-cozy-jobs/c1fc892046d672c516571a049b053611 {\"_id\":\"c1fc892046d672c516571a049b053611\",\"_rev\":\"1-467bd460da545c26f7d134c8ef6137cf\",\"domain\":\"cozy.example.com\",\"prefix\":\"cozy6f24cd18535faa406bdb84da7f77671f\",\"worker\":\"konnector\",\"trigger_id\":\"c1fc892046d672c516571a049b04ef4b\",\"message\":{\"konnector\":\"sosh\",\"account\":\"c1fc892046d672c516571a049b04e5aa\",\"folder_to_save\":\"c1fc892046d672c516571a049b04db74\"},\"event\":null,\"manual_execution\":true,\"state\":\"running\",\"queued_at\":\"2018-11-02T10:55:30.812089061+01:00\",\"started_at\":\"2018-11-02T10:55:30.832334529+01:00\",\"finished_at\":\"0001-01-01T00:00:00Z\"}" domain=cozy.example.com nspace=couchdb
Nov  2 10:55:30 sd-47961 cozy[57719]: time="2018-11-02T10:55:30+01:00" level=debug msg="response: {\"ok\":true,\"id\":\"c1fc892046d672c516571a049b053611\",\"rev\":\"2-b190ba7dbaf51c85f3c31605c2fd614a\"}" domain=cozy.example.com nspace=couchdbNov  2 10:55:30 sd-47961 cozy[57719]: time="2018-11-02T10:55:30+01:00" level=debug msg="Executing job (0) (timeout set to 5m0s)" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs worker_id=konnector/6
Nov  2 10:55:30 sd-47961 cozy[57719]: time="2018-11-02T10:55:30+01:00" level=debug msg="request: GET cozy6f24cd18535faa406bdb84da7f77671f%2Fio-cozy-konnectors/io.cozy.konnectors%2Fsosh " domain=cozy.example.com nspace=couchdb
Nov  2 10:55:30 sd-47961 cozy[57719]: time="2018-11-02T10:55:30+01:00" level=debug msg="response: {\"_id\":\"io.cozy.konnectors/sosh\",\"_rev\":\"2-e67f6d3d5fa54f8af7070e9d7cc9785f\",\"name\":\"Sosh\",\"editor\":\"Cozy\",\"icon\":\"sosh.svg\",\"type\":\"konnector\",\"language\":\"node\",\"vendor_link\":\"https://www.sosh.fr/\",\"locales\":{\"fr\":{\"short_description\":\"Récupérer vos données Sosh dans votre Cozy\",\"long_description\":\"Ce fournisseur vous permettra de récupérer l'ensemble de vos factures Sosh dans votre Cozy.\"},\"en\":{\"short_description\":\"Fetch your Sosh data in your Cozy\",\"long_description\":\"This provider will allow you to fetch all your Sosh bills in your Cozy.\"}},\"langs\":[\"fr\"],\"categories\":[\"telecom\"],\"developer\":{\"name\":\"Cozy Cloud\",\"url\":\"https://cozy.io\"},\"screenshots\":[],\"data_types\":[\"bill\"],\"fields\":{\"login\":{\"type\":\"text\"},\"password\":{\"type\":\"password\"},\"advancedFields\":{\"folderPath\":{\"advanced\":true,\"isRequired\":false}}},\"notifications\":null,\"slug\":\"sosh\",\"state\":\"ready\",\"source\":\"registry://sosh/stable\",\"version\":\"1.1.0\",\"permissions\":{\"accounts\":{\"type\":\"io.cozy.accounts\",\"description\":\"Required to get the account's data\",\"verbs\":[\"GET\"]},\"bank\":{\"type\":\"io.cozy.bank.operations\",\"description\":\"Required to link bills to a bank operation\"},\"bills\":{\"type\":\"io.cozy.bills\",\"description\":\"Required to save the bills data\"},\"files\":{\"type\":\"io.cozy.files\",\"description\":\"Required to save the bills\"}},\"available_version\":\"1.1.0\",\"created_at\":\"2018-11-02T10:44:37.366826711+01:00\",\"updated_at\":\"2018-11-02T10:54:18.609224228+01:00\"}" domain=cozy.example.com nspace=couchdb
Nov  2 10:55:30 sd-47961 cozy[57719]: time="2018-11-02T10:55:30+01:00" level=debug msg="request: GET cozy6f24cd18535faa406bdb84da7f77671f%2Fio-cozy-files/c1fc892046d672c516571a049b04db74 " domain=cozy.example.com nspace=couchdb
Nov  2 10:55:30 sd-47961 cozy[57719]: time="2018-11-02T10:55:30+01:00" level=debug msg="response: {\"_id\":\"c1fc892046d672c516571a049b04db74\",\"_rev\":\"2-908b032380e8c37595b7cba4a8afaf7c\",\"type\":\"directory\",\"name\":\"0650503532\",\"dir_id\":\"c1fc892046d672c516571a049b04d774\",\"created_at\":\"2018-11-02T10:44:49.443616907+01:00\",\"updated_at\":\"2018-11-02T10:44:49.443616907+01:00\",\"tags\":[],\"path\":\"/Administrative/Sosh/0650503532\",\"referenced_by\":[{\"id\":\"undefined\",\"type\":\"io.cozy.konnectors\"}]}" domain=cozy.example.com nspace=couchdb
Nov  2 10:55:30 sd-47961 cozy[57719]: time="2018-11-02T10:55:30+01:00" level=debug msg="request: POST cozy6f24cd18535faa406bdb84da7f77671f%2Fio-cozy-permissions/_find {\"selector\":{\"$and\":[{\"type\":\"konnector\"},{\"source_id\":\"io.cozy.konnectors/sosh\"}]},\"use_index\":\"by-source-and-type\",\"limit\":1}" domain=cozy.example.com nspace=couchdb
Nov  2 10:55:30 sd-47961 cozy[57719]: time="2018-11-02T10:55:30+01:00" level=debug msg="response: {\"docs\":[\r\n{\"_id\":\"c1fc892046d672c516571a049b04b9ca\",\"_rev\":\"5-90382c993b0718ad55753a8c06a2492c\",\"type\":\"konnector\",\"source_id\":\"io.cozy.konnectors/sosh\",\"permissions\":{\"accounts\":{\"type\":\"io.cozy.accounts\",\"description\":\"Required to get the account's data\",\"verbs\":[\"GET\"]},\"bank\":{\"type\":\"io.cozy.bank.operations\",\"description\":\"Required to link bills to a bank operation\"},\"bills\":{\"type\":\"io.cozy.bills\",\"description\":\"Required to save the bills data\"},\"files\":{\"type\":\"io.cozy.files\",\"description\":\"Required to save the bills\"},\"referenced folders\":{\"type\":\"io.cozy.files\",\"description\":\"folders referenced by the konnector\",\"selector\":\"referenced_by\",\"values\":[\"io.cozy.konnectors/sosh\"]}}}\r\n],\r\n\"bookmark\": \"g1AAAAB7eJzLYWBgYMpgSmHgKy5JLCrJTq2MT8lPzkzJBYorJBumJVtYGhmYmKWYmRslmxqamZobJhqYWCYZmCRZJieC9HHA9OWATAJpE8_M10vOr6rUy87Py0tNLskvKtYvzi_OAMlxwsWysgAIWiOU\"}" domain=cozy.example.com nspace=couchdb
Nov  2 10:55:31 sd-47961 cozy[57719]: time="2018-11-02T10:55:31+01:00" level=debug msg="process.env.SENTRY_DSN found, setting up Raven" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:31 sd-47961 cozy[57719]: time="2018-11-02T10:55:31+01:00" level=debug msg="Raven configured !" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:31 sd-47961 cozy[57719]: time="2018-11-02T10:55:31+01:00" level=debug domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:32 sd-47961 cozy[57719]: time="2018-11-02T10:55:32+01:00" level=error msg="Account c1fc892046d672c516571a049b04e5aa does not exist" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:32 sd-47961 cozy[57719]: time="2018-11-02T10:55:32+01:00" level=warning msg="Error caught by BaseKonnector" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:32 sd-47961 cozy[57719]: time="2018-11-02T10:55:32+01:00" level=warning msg=CANNOT_FIND_ACCOUNT domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:32 sd-47961 cozy[57719]: time="2018-11-02T10:55:32+01:00" level=error msg=CANNOT_FIND_ACCOUNT domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:32 sd-47961 cozy[57719]: time="2018-11-02T10:55:32+01:00" level=debug msg="Capture exception and die" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:32 sd-47961 cozy[57719]: time="2018-11-02T10:55:32+01:00" level=debug msg="Sending exception to Sentry" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:33 sd-47961 cozy[57719]: time="2018-11-02T10:55:33+01:00" level=debug msg="Successfully sent exception with eventId 0919c8a8c19b40a79c715728b9246f69 to Sentry" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:33 sd-47961 cozy[57719]: time="2018-11-02T10:55:33+01:00" level=warning msg="Error while performing job: CANNOT_FIND_ACCOUNT (retry in 60.750001ms)" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs worker_id=konnector/6
Nov  2 10:55:33 sd-47961 cozy[57719]: time="2018-11-02T10:55:33+01:00" level=debug msg="Executing job (1) (timeout set to 5m0s)" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs worker_id=konnector/6
Nov  2 10:55:33 sd-47961 cozy[57719]: time="2018-11-02T10:55:33+01:00" level=debug msg="request: GET cozy6f24cd18535faa406bdb84da7f77671f%2Fio-cozy-konnectors/io.cozy.konnectors%2Fsosh " domain=cozy.example.com nspace=couchdb
Nov  2 10:55:33 sd-47961 cozy[57719]: time="2018-11-02T10:55:33+01:00" level=debug msg="response: {\"_id\":\"io.cozy.konnectors/sosh\",\"_rev\":\"2-e67f6d3d5fa54f8af7070e9d7cc9785f\",\"name\":\"Sosh\",\"editor\":\"Cozy\",\"icon\":\"sosh.svg\",\"type\":\"konnector\",\"language\":\"node\",\"vendor_link\":\"https://www.sosh.fr/\",\"locales\":{\"fr\":{\"short_description\":\"Récupérer vos données Sosh dans votre Cozy\",\"long_description\":\"Ce fournisseur vous permettra de récupérer l'ensemble de vos factures Sosh dans votre Cozy.\"},\"en\":{\"short_description\":\"Fetch your Sosh data in your Cozy\",\"long_description\":\"This provider will allow you to fetch all your Sosh bills in your Cozy.\"}},\"langs\":[\"fr\"],\"categories\":[\"telecom\"],\"developer\":{\"name\":\"Cozy Cloud\",\"url\":\"https://cozy.io\"},\"screenshots\":[],\"data_types\":[\"bill\"],\"fields\":{\"login\":{\"type\":\"text\"},\"password\":{\"type\":\"password\"},\"advancedFields\":{\"folderPath\":{\"advanced\":true,\"isRequired\":false}}},\"notifications\":null,\"slug\":\"sosh\",\"state\":\"ready\",\"source\":\"registry://sosh/stable\",\"version\":\"1.1.0\",\"permissions\":{\"accounts\":{\"type\":\"io.cozy.accounts\",\"description\":\"Required to get the account's data\",\"verbs\":[\"GET\"]},\"bank\":{\"type\":\"io.cozy.bank.operations\",\"description\":\"Required to link bills to a bank operation\"},\"bills\":{\"type\":\"io.cozy.bills\",\"description\":\"Required to save the bills data\"},\"files\":{\"type\":\"io.cozy.files\",\"description\":\"Required to save the bills\"}},\"available_version\":\"1.1.0\",\"created_at\":\"2018-11-02T10:44:37.366826711+01:00\",\"updated_at\":\"2018-11-02T10:54:18.609224228+01:00\"}" domain=cozy.example.com nspace=couchdb
Nov  2 10:55:33 sd-47961 cozy[57719]: time="2018-11-02T10:55:33+01:00" level=debug msg="request: GET cozy6f24cd18535faa406bdb84da7f77671f%2Fio-cozy-files/c1fc892046d672c516571a049b04db74 " domain=cozy.example.com nspace=couchdb
Nov  2 10:55:33 sd-47961 cozy[57719]: time="2018-11-02T10:55:33+01:00" level=debug msg="response: {\"_id\":\"c1fc892046d672c516571a049b04db74\",\"_rev\":\"2-908b032380e8c37595b7cba4a8afaf7c\",\"type\":\"directory\",\"name\":\"0650503532\",\"dir_id\":\"c1fc892046d672c516571a049b04d774\",\"created_at\":\"2018-11-02T10:44:49.443616907+01:00\",\"updated_at\":\"2018-11-02T10:44:49.443616907+01:00\",\"tags\":[],\"path\":\"/Administrative/Sosh/0650503532\",\"referenced_by\":[{\"id\":\"undefined\",\"type\":\"io.cozy.konnectors\"}]}" domain=cozy.example.com nspace=couchdb
Nov  2 10:55:33 sd-47961 cozy[57719]: time="2018-11-02T10:55:33+01:00" level=debug msg="request: POST cozy6f24cd18535faa406bdb84da7f77671f%2Fio-cozy-permissions/_find {\"selector\":{\"$and\":[{\"type\":\"konnector\"},{\"source_id\":\"io.cozy.konnectors/sosh\"}]},\"use_index\":\"by-source-and-type\",\"limit\":1}" domain=cozy.example.com nspace=couchdb
Nov  2 10:55:33 sd-47961 cozy[57719]: time="2018-11-02T10:55:33+01:00" level=debug msg="response: {\"docs\":[\r\n{\"_id\":\"c1fc892046d672c516571a049b04b9ca\",\"_rev\":\"5-90382c993b0718ad55753a8c06a2492c\",\"type\":\"konnector\",\"source_id\":\"io.cozy.konnectors/sosh\",\"permissions\":{\"accounts\":{\"type\":\"io.cozy.accounts\",\"description\":\"Required to get the account's data\",\"verbs\":[\"GET\"]},\"bank\":{\"type\":\"io.cozy.bank.operations\",\"description\":\"Required to link bills to a bank operation\"},\"bills\":{\"type\":\"io.cozy.bills\",\"description\":\"Required to save the bills data\"},\"files\":{\"type\":\"io.cozy.files\",\"description\":\"Required to save the bills\"},\"referenced folders\":{\"type\":\"io.cozy.files\",\"description\":\"folders referenced by the konnector\",\"selector\":\"referenced_by\",\"values\":[\"io.cozy.konnectors/sosh\"]}}}\r\n],\r\n\"bookmark\": \"g1AAAAB7eJzLYWBgYMpgSmHgKy5JLCrJTq2MT8lPzkzJBYorJBumJVtYGhmYmKWYmRslmxqamZobJhqYWCYZmCRZJieC9HHA9OWATAJpE8_M10vOr6rUy87Py0tNLskvKtYvzi_OAMlxwsWysgAIWiOU\"}" domain=cozy.example.com nspace=couchdb
Nov  2 10:55:34 sd-47961 cozy[57719]: time="2018-11-02T10:55:34+01:00" level=debug msg="process.env.SENTRY_DSN found, setting up Raven" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:34 sd-47961 cozy[57719]: time="2018-11-02T10:55:34+01:00" level=debug msg="Raven configured !" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:34 sd-47961 cozy[57719]: time="2018-11-02T10:55:34+01:00" level=debug domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:35 sd-47961 cozy[57719]: time="2018-11-02T10:55:35+01:00" level=error msg="Account c1fc892046d672c516571a049b04e5aa does not exist" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:35 sd-47961 cozy[57719]: time="2018-11-02T10:55:35+01:00" level=warning msg="Error caught by BaseKonnector" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:35 sd-47961 cozy[57719]: time="2018-11-02T10:55:35+01:00" level=warning msg=CANNOT_FIND_ACCOUNT domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:35 sd-47961 cozy[57719]: time="2018-11-02T10:55:35+01:00" level=error msg=CANNOT_FIND_ACCOUNT domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:35 sd-47961 cozy[57719]: time="2018-11-02T10:55:35+01:00" level=debug msg="Capture exception and die" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:35 sd-47961 cozy[57719]: time="2018-11-02T10:55:35+01:00" level=debug msg="Sending exception to Sentry" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:35 sd-47961 cozy[57719]: time="2018-11-02T10:55:35+01:00" level=debug msg="Successfully sent exception with eventId dc288716309d4f6f882dea05dc78622e to Sentry" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:35 sd-47961 cozy[57719]: time="2018-11-02T10:55:35+01:00" level=info msg="Konnector failure: CANNOT_FIND_ACCOUNT" account_id=c1fc892046d672c516571a049b04e5aa domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs slug=sosh worker_id=konnector/6
Nov  2 10:55:35 sd-47961 cozy[57719]: time="2018-11-02T10:55:35+01:00" level=error msg="error while performing job: CANNOT_FIND_ACCOUNT" domain=cozy.example.com job_id=c1fc892046d672c516571a049b053611 nspace=jobs worker_id=konnector/6
Nov  2 10:55:35 sd-47961 cozy[57719]: time="2018-11-02T10:55:35+01:00" level=debug msg="nack c1fc892046d672c516571a049b053611 " domain=cozy.example.com nspace=jobs
Nov  2 10:55:35 sd-47961 cozy[57719]: time="2018-11-02T10:55:35+01:00" level=debug msg="request: GET cozy6f24cd18535faa406bdb84da7f77671f%2Fio-cozy-jobs/c1fc892046d672c516571a049b053611 " domain=cozy.example.com nspace=couchdb
Nov  2 10:55:35 sd-47961 cozy[57719]: time="2018-11-02T10:55:35+01:00" level=debug msg="response: {\"_id\":\"c1fc892046d672c516571a049b053611\",\"_rev\":\"2-b190ba7dbaf51c85f3c31605c2fd614a\",\"domain\":\"cozy.example.com\",\"prefix\":\"cozy6f24cd18535faa406bdb84da7f77671f\",\"worker\":\"konnector\",\"trigger_id\":\"c1fc892046d672c516571a049b04ef4b\",\"message\":{\"konnector\":\"sosh\",\"account\":\"c1fc892046d672c516571a049b04e5aa\",\"folder_to_save\":\"c1fc892046d672c516571a049b04db74\"},\"event\":null,\"manual_execution\":true,\"state\":\"running\",\"queued_at\":\"2018-11-02T10:55:30.812089061+01:00\",\"started_at\":\"2018-11-02T10:55:30.832334529+01:00\",\"finished_at\":\"0001-01-01T00:00:00Z\"}" domain=cozy.example.com nspace=couchdb
Nov  2 10:55:35 sd-47961 cozy[57719]: time="2018-11-02T10:55:35+01:00" level=debug msg="request: PUT cozy6f24cd18535faa406bdb84da7f77671f%2Fio-cozy-jobs/c1fc892046d672c516571a049b053611 {\"_id\":\"c1fc892046d672c516571a049b053611\",\"_rev\":\"2-b190ba7dbaf51c85f3c31605c2fd614a\",\"domain\":\"cozy.example.com\",\"prefix\":\"cozy6f24cd18535faa406bdb84da7f77671f\",\"worker\":\"konnector\",\"trigger_id\":\"c1fc892046d672c516571a049b04ef4b\",\"message\":{\"konnector\":\"sosh\",\"account\":\"c1fc892046d672c516571a049b04e5aa\",\"folder_to_save\":\"c1fc892046d672c516571a049b04db74\"},\"event\":null,\"manual_execution\":true,\"state\":\"errored\",\"queued_at\":\"2018-11-02T10:55:30.812089061+01:00\",\"started_at\":\"2018-11-02T10:55:30.832334529+01:00\",\"finished_at\":\"2018-11-02T10:55:35.481426985+01:00\",\"error\":\"CANNOT_FIND_ACCOUNT\"}" domain=cozy.example.com nspace=couchdb
Nov  2 10:55:35 sd-47961 cozy[57719]: time="2018-11-02T10:55:35+01:00" level=debug msg="response: {\"ok\":true,\"id\":\"c1fc892046d672c516571a049b053611\",\"rev\":\"3-6bd3f50e226a9488e2f9784ffcac697b\"}" domain=cozy.example.com nspace=couchdb

Et concernant le connecteur Google, même depuis l’appli Contacts j’ai la même erreur.


#8

Bon, le mystère s’épaissit. Le connecteur arrive bien à communiquer avec le Cozy, mais ne trouve pas les comptes.

Pour aller plus loin, il va falloir demander poliment à CouchDB.

Tu peux interroger CouchDB soit directement avec curl depuis la ligne de commande de ton serveur, soit, si tu préfères une interface graphite, via son outil d’administration inclus, Futon. Pour cela, il faut que tu pointes un navigateur Web vers le port 5984 de ton serveur. Ce port n’est naturellement pas accessible depuis l’extérieur du serveur, donc si ton serveur est distant, il te faudra faire un tunnel SSH pour exposer ce port en local.

Que préfères-tu ?


#9

Je viens de faire le tunnel et je suis connecté sur Futon en tant qu’admin. Que veux-tu que je regarde ?

PS : merci pour ton temps et ton aide ^^


#10

Quelle rapidité !

Les connecteurs utilisent essentiellement trois bases :

  • io-cozy-accounts : c’est la liste de tes comptes, avec leur identifiant ;
  • io-cozy-triggers : c’est la tâche périodique de récupération des informations. Elle définit notamment la périodicité de la récupération, et fait le lien avec le le compte, via une propriété account ;
  • io-cozy-jobs contient une tâche par exécution d’un connecteur, avec un lien vers le trigger, l’heure d’exécution et le résultat.

Dans la table io-cozy-jobs, tu devrais par exemple trouver un document d’identifiant c1fc892046d672c516571a049b053611 correspondant à une tentative d’import Sosh. Cette tâche comporte le nom du trigger correspondant. Dans ce trigger, tu devrais trouver l’identifiant du compte Sosh, c1fc892046d672c516571a049b04e5aa d’après le journal.
Il te reste à vérifier dans la base accounts si un compte perte bien cet identifiant.

Ensuite, ça va se compliquer, parce que le mot de passe des comptes est stocké chiffré en base, donc le connecteur ne le récupère pas en faisant une requête à la base, mais via des variables d’environnement qui lui sont communiquées par la stack lorsqu’elle le lance. Et là, je ne sais pas comment ça fonctionne, mais on va chercher :wink:


#11

Oui c’est vrai que j’ai hâte de pouvoir utiliser Cozy :upside_down_face:

Voici le document en question :

{
  "_id": "c1fc892046d672c516571a049b053611",
  "_rev": "3-6bd3f50e226a9488e2f9784ffcac697b",
  "domain": "cozy.example.com",
  "prefix": "cozy6f24cd18535faa406bdb84da7f77671f",
  "worker": "konnector",
  "trigger_id": "c1fc892046d672c516571a049b04ef4b",
  "message": {
    "konnector": "sosh",
    "account": "c1fc892046d672c516571a049b04e5aa",
    "folder_to_save": "c1fc892046d672c516571a049b04db74"
  },
  "event": null,
  "manual_execution": true,
  "state": "errored",
  "queued_at": "2018-11-02T10:55:30.812089061+01:00",
  "started_at": "2018-11-02T10:55:30.832334529+01:00",
  "finished_at": "2018-11-02T10:55:35.481426985+01:00",
  "error": "CANNOT_FIND_ACCOUNT"
} 

Trigger que voici

{
  "_id": "c1fc892046d672c516571a049b04ef4b",
  "_rev": "1-13370d3f3c1860ae5205fa5689d00017",
  "domain": "cozy.example.com",
  "prefix": "cozy6f24cd18535faa406bdb84da7f77671f",
  "type": "@cron",
  "worker": "konnector",
  "arguments": "0 30 0 * * 5",
  "debounce": "",
  "options": null,
  "message": {
    "konnector": "sosh",
    "account": "c1fc892046d672c516571a049b04e5aa",
    "folder_to_save": "c1fc892046d672c516571a049b04db74"
  }
}

En effet, le compte existe bel et bien

{
  "_id": "c1fc892046d672c516571a049b04e5aa",
  "_rev": "1-a639a4650e7a30c5ce200c423ad196e1",
  "account_type": "sosh",
  "auth": {
    "accountName": "",
    "folderPath": "/Administrative/Sosh/<login>",
    "login": "<login>",
    "namePath": "<login>",
    "password": "<password>"
  },
  "type": "io.cozy.accounts"
}

Dans le document plus haut figure bien mes identifiants… :thinking: Je les ai remplacé ici pour des raisons évidentes.

Encore merci pour ton aide :wink:


#12

Bon, là je sèche. D’après https://github.com/konnectors/libs/blob/d86036326cc8e21a90acc7fc715ef2fa09bb315f/packages/cozy-konnector-libs/src/libs/BaseKonnector.js#L116, le message CANNOT_FIND_ACCOUNT signaifie qu’il ne trouve pas le compte en base. Or il existe.

Est-ce que les requêtes précédentes seraient effectuées par la stack, mais que ça seraient bien les requêtes du connecteur lui-même qui ne passeraient pas ?

J’invoque @nono , au secours !


#13

Salut,

Les requêtes transitent par le reverse-proxy.

Le connecteur Google est particulier : il utilise de l’OAuth et nécessite l’enregistrement d’un client à l’avance pour fonctionner. https://docs.cozy.io/en/cozy-stack/konnectors-workflow/#example-google donne les grandes étapes pour faire ça, mais ça mériterait d’avoir une documentation plus détaillée.

La stack fait effectivement des requêtes sur le compte juste avant d’exécuter le connecteur. C’est donc fort possible que ce soit ça.

En particulier, pour les auto-hébergés, un piège peut-être la box pour se connecter à Internet qui refuse qu’un ordinateur du réseau local essayer de se connecter à son IP publique.

Depuis le serveur, est-ce qu’il est possible de faire un curl -v https://cozy.example.com/status (avec le nom de domaine correct) ? Si la réponse n’est pas du JSON, on peut essayer d’ajouter une ligne au fichier /etc/hosts avec :

127.0.0.1 cozy.example.com

#14

Ok merci pour l’info, je regarderai après pour le configurer.

J’essaye d’installer Cozy sur un dédié chez online.net, si ça peut aider.

Je reçois bien le JSON suivant :
{"couchdb":"healthy","message":"OK"}

Merci pour ton aide @nono !


#15

Alors je ne sais pas ce qu’il s’est passé, mais le fait d’installer le connecteur Google a débloqué la situation. J’ai maintenant tous les konnectors qui fonctionnent.
J’ai créé la base de donnée secrets/io-cozy-account_types (d’ailleurs erreur dans la doc où il est écrit secrets/io-cozy-accounts_types), ensuite j’ai créé le document Google. Je me suis connecté avec mon compte Google et depuis tous les autres konnectors se sont mis à fonctionner. Peut-être qu’il me manquait quelque chose qui posait problème, mais que le konnector Google a créé.

Merci à vous deux pour votre aide ! @Clochix @nono