Se connecter à Amazon S3 à l’aide de Python
Aperçu
L’outil Analytics Cloud Connect Access est une interface de ligne de commande (CLI) qui vous aide à configurer et à gérer données transferts de Procore vers Amazon S3 avec Analytics 2.0.
Il se compose de deux composantes principales :
user_exp.py: Utilitaire de configuration
delta_share_to_s3.py: Données script de synchronisation
Conditions préalables
Référence SKU Analytics 2.0
Python est installé sur votre système
Accès à Procore Delta Share
Touches d’accès S3
Téléchargez le lot de fichiers zip à partir de l’outil Analytics niveau Entreprise (via Analytics > Mise en route > Options de connexion > AWS).
Installation des dépendances requises à l’aide de :
pip install -r requirements.txt
Escalier
Configuration initiale
Configuration de la source de partage Delta
S3 Configuration
Options de planification
Meilleures pratiques
Dépannage
Configuration initiale
Exécutez l’utilitaire de configuration à l’aide python user_exp.py.
Cela vous aidera à configurer les éléments suivants :
Delta Share Configuration
Configuration de la cible S3
Préférences de Planning
Delta Share Configuration
Création d’un fichier config.share
Avant d’exécuter l’utilitaire de configuration, vous devez créer un config.sharefichier avec votre identifiants Delta Share. Le fichier doit être au format JSON :
{"shareCredentialsVersion": 1,"bearerToken": "xxxxxxxxxxxxx",ShareCredentialsVersion : numéro de version (actuellement 1).
BearerToken : votre jeton d’accès Delta Share.
Point de terminaison : l’URL de votre point de terminaison Delta Share.
Ces détails peuvent être obtenus à partir de l’interface utilisateur Web de Procore.
"endpoint": "xxxxxx"
}
Champs obligatoires :
Étapes à suivre pour créer config.share :
Créez un fichier nommé config.share.
Copiez le modèle JSON ci-dessus.
Remplacez les valeurs d’espace réservé par vos identifiants d’identification réels.
Enregistrez le fichier dans un lieu sûr.
Vous devrez fournir le chemin d’accès à ce fichier lors de la configuration. Lors de la configuration de la source de données, il vous sera demandé de fournir :
Liste des tableaux (séparés par des virgules).
Laissez le champ vide pour synchroniser tous les tableaux.
Exemple : table1, table2, table3.
Chemin d’accès à votre fichier config.share .
S3 Configuration
Vous devrez fournir les détails S3 suivants :
Authentification :
Clé d’accès
Clé secrète
Nom du compartiment sans s3 ://
clé - annuaire
Options de planification
L’outil offre la possibilité de programmer une synchronisation automatique des données.
Configuration du projet Cron
Choisissez de configurer ou non un projet quotidien.
Si oui, fournissez un planning cron.
Format :
* * * * *(minute, heure, jour, jour du mois, jour de la semaine).Exemple pour tous les jours à 2 heures du matin : 0 2
* * *Pour vérifier les journaux de planification, le fichier 'procore_scheduling.log'sera créé dès que la planification sera configurée.
Vous pouvez également vérifier la Planning en exécutant la commande terminal
Pour Linux et MacOS :
Pour modifier/supprimer - modifiez le cron de Planning à l’aide de :bashEDITOR=nano crontab -e
Après avoir exécuté la commande ci-dessus, vous devriez voir quelque chose de similaire à :
2 * * * * /Users/your_user/snowflake/venv/bin/python/Users/your_user/snowflake/sql_server_python/connection_config.py 2>&1 | while read line; do echo "$(date) - $line"; done >>/Users/your_user/snowflake/sql_server_python/procore_scheduling.log # procore-data-importVous pouvez également ajuster le cron du planning ou supprimer la ligne entière pour l’empêcher de fonctionner selon le planning.
Pour Windows :
Vérifiez que le tâche de planning est créé :
powershellschtasks /query /tn "ProcoreDeltaShareScheduling" /fo LIST /vAppuyez sur Win + R, tapez taskschd.msc, et appuyez sur Entrée.
Accédez aux tâches planifiées.
Dans le volet gauche, développez la bibliothèque du planificateur de tâches.
Recherchez le dossier dans lequel votre tâche est enregistrée (par exemple, la bibliothèque du planificateur de tâches ou un dossier personnalisé).
Pour modifier/supprimer - tâche de planning :
Ouvrez le planificateur de tâche :Trouvez votre tâche :
Recherchez le nom tâche ProcoreDeltaShareScheduling.
Cliquez dessus pour afficher ses détails dans le volet inférieur.
Vérifiez son planning :
Vérifiez l’onglet Déclencheurs pour voir quand la tâche est définie pour s’exécuter.
Consultez l’onglet Historique pour confirmer les exécutions récentes.
Pour supprimer une tâche :
Supprimer la tâche de l’interface graphique.
Exécution immédiate
Option permettant d’exécuter la structure de fichiers delta_share_to_s3_.py
Unset
├── requirements.txt # Dependencies
├── user_exp.py # Configuration utility
├── delta_share_to_s3.py # Data sync script
├── config.yaml # Generated configuration
├── config.share # Delta Share config file
├── procore_scheduling.log # Log of scheduling runs
Exemple d’utilisation
Étape 1: Installer les dépendances
$ pip install -r requirements.txtÉtape 2: Exécuter l’utilitaire de configuration
$ python user_exp.pyAccès Analytics Cloud Connect
Cette interface de ligne de commande vous aidera à choisir votre magasin source et votre magasin de destination pour accéder/écrire des données Procore dans S3.
Appuyez sur Entrée pour continuer.
Entrez la liste des tableaux (séparés par des virgules), laissez-la vide pour tous les tableaux : projets, utilisateurs, tâches.
Entrez le chemin d’accès à config.share : /path/to/config.share.
Entrez la clé d’accès : clé s3.
Entrez secret : secret.
Enter bucket : nom du bucket.
Voulez-vous configurer cela comme un projet quotidien sur cron ? (Oui/Non) : Oui
Saisissez le planning au format cron (par exemple,
* * * * *):0 2 * * *Voulez-vous exécuter le projet maintenant ? (Oui/Non) : Oui
Étape 3: Exécution manuelle (si nécessaire)
$ python delta_share_to_s3.py
Réutilisation de la configuration L’outil enregistre votre configuration dans le fichier config.yaml et propose de réutiliser les paramètres précédemment stockés :
La configuration source peut être réutilisée.
La configuration cible (S3) peut être réutilisée.
Vous pouvez choisir de mettre à jour l’une ou l’autre configuration indépendamment.
Dépannage
Problèmes courants et solutions:
Configuration du projet Cron
Assurez-vous que les autorisations système sont correctement configurées.
Vérifiez les journaux système si le projet ne parvient pas à s’exécuter.
Vérifiez les autorisations d’exécution du script ().delta_share_to_s3.py
Fichier de configuration
Vérifiez que le fichier config.yaml se trouve dans le même Annuaire que le script.
Sauvegardez avant d’apporter des modifications.
Soutien
Consultez les journaux de script pour obtenir des messages d’erreur détaillés.
Examinez votre config.yamlfichier pour détecter les erreurs de configuration.
Contactez votre administrateur système pour les problèmes liés aux autorisations.
Contactez le support technique Procore pour les problèmes d’accès à Delta Share.
Vérifiez la procore_scheduling_logconfiguration du projet cron en vérifiant les journaux système : Voir fichier.
Remarques :
N’oubliez pas de toujours sauvegarder votre configuration avant d’apporter des modifications.
Testez d’abord les nouvelles configurations dans un environnement de production.