Python Script
Python Script eylem adımı, süreç madenciliği verilerinize erişimle özel Python kodu çalıştırmanıza olanak tanır. Bu, veri dönüşümü, özel entegrasyonlar ve uzman işleme için maksimum esneklik sağlar.
Genel Bakış
Bir Python Script eylem adımı yapılandırdığınızda, sistem:
- Seçtiğiniz tüm analizlerden verileri toplar
- Bu verileri Python kodunuza sunar
- Kodunuzu güvenli bir ortamda çalıştırır
- Verileri işlemeye, dönüştürmeye veya istediğiniz yere göndermenize izin verir
Bu, yerleşik seçeneklerin ötesinde özel işlevsellik gerektiren ileri düzey kullanıcılar için en güçlü ve esnek eylem adımıdır.
Ne Zaman Python Script Kullanılır
Python Script’i şu durumlarda kullanın:
- Verileri özel API’lere veya webhook’lara göndermek
- Verileri diğer sistemlere aktarmadan önce dönüştürmek
- Veritabanları veya veri ambarlarıyla entegre olmak
- Özel dosya formatları veya raporlar oluşturmak
- mindzieStudio standart özelliklerinde olmayan hesaplamalar gerçekleştirmek
- Üçüncü taraf hizmetlerle entegrasyon (Slack, Teams, Salesforce vb.)
Ön Koşullar
Python Script kullanmadan önce:
- Temel Python programlama bilgisi gereklidir
- Eylem sihirbazının Veri adımında analiz verileri seçilmelidir
- Analizlerinizden erişilebilir veri yapıları anlaşılmalıdır
Yapılandırma
Eyleminize Python Script eklemek için Eylem Adımları bölümünde + düğmesine tıklayın ve Python Scripti seçin.
Script Düzenleyici
Python Script iletişim kutusu, Python kodunuzu yazabileceğiniz bir kod düzenleyici sağlar. Script erişebilir:
- Seçtiğiniz analizlerden tüm veriler
- Standart Python kütüphaneleri
- Yaygın veri işleme kütüphaneleri (pandas, requests vb.)
Mevcut Veriler
Script’iniz seçilen analiz verilerini yapılandırılmış formatlarda alır. Erişebilirsiniz:
- Ham olay günlük verileri
- Hesaplanan metrikler ve istatistikler
- Analiz sonuçları ve tabloları
- Görselleştirme verileri
Örnek Scriptler
Verileri Webhook’a Gönderme
import requests
import json
# Analiz verilerine eriş
data = get_analysis_data()
# Webhook’a gönder
response = requests.post(
'https://your-webhook-url.com/endpoint',
json=data,
headers={'Content-Type': 'application/json'}
)
if response.status_code == 200:
print("Veri başarıyla gönderildi")
else:
print(f"Hata: {response.status_code}")
Veritabanına Aktarım
import pandas as pd
from sqlalchemy import create_engine
# Analiz verisini DataFrame olarak al
df = get_analysis_dataframe()
# Veritabanına bağlan
engine = create_engine('postgresql://user:pass@host:5432/database')
# Veriyi tabloya yaz
df.to_sql('process_metrics', engine, if_exists='replace', index=False)
print(f"Veritabanına {len(df)} satır aktarıldı")
Slack Bildirimi Gönderme
import requests
# Anahtar metrikleri al
metrics = get_analysis_data()
avg_duration = metrics['average_duration']
case_count = metrics['case_count']
# Slack’e gönder
slack_message = {
"text": f"Günlük Süreç Özeti: {case_count} vaka işlendi, ortalama süre: {avg_duration}"
}
requests.post(
'https://hooks.slack.com/services/YOUR/WEBHOOK/URL',
json=slack_message
)
Özel CSV Aktarımı
import pandas as pd
from datetime import datetime
# Veriyi al
df = get_analysis_dataframe()
# Veriyi dönüştür
df['export_date'] = datetime.now().strftime('%Y-%m-%d')
df['source'] = 'mindzieStudio'
# Özel konuma kaydet
filename = f"process_export_{datetime.now().strftime('%Y%m%d')}.csv"
df.to_csv(f'/exports/{filename}', index=False)
print(f"{filename} dosyasına aktarıldı")
En İyi Uygulamalar
Önce scriptleri manuel test edin: Python kodunuzu geliştirin ve eylemde planlamadan önce test edin. Mantığı doğrulamak için Python notebook’ları kullanın.
Hataları düzgün yönetin: Hataları yakalamak ve kaydetmek için try/except blokları ekleyin. Başarısız scriptler faydalı hata mesajları sağlamalıdır.
Önemli adımları kaydedin: İlerlemeyi takip etmek için print ifadeleri kullanın. Bunlar eylem geçmişinde görünür.
Kimlik bilgilerini güvende tutun: Şifre veya API anahtarlarını scriptlerde sabit kodlamayın. Ortam değişkenleri veya güvenli depolama kullanın.
Çalışma süresini göz önünde bulundurun: Eylemlerin zaman aşımı sınırları vardır. Büyük veri kümelerinde özellikle scriptlerinizi verimli hale getirin.
İşlem öncesi veriyi doğrulayın: Beklenen verinin varlığını kontrol edin. Eksik verileri düzgün şekilde yönetin.
Yaygın Kalıplar
Hata Yönetimi
try:
data = get_analysis_data()
process_data(data)
print("Başarılı")
except Exception as e:
print(f"Hata: {str(e)}")
# İsteğe bağlı uyarı gönder
send_error_notification(str(e))
Veri Doğrulama
data = get_analysis_data()
if not data or len(data) == 0:
print("Veri yok - aktarma atlanıyor")
exit()
if 'required_column' not in data.columns:
print("Gerekli sütun eksik")
exit()
# İşleme devam et
Koşullu İşlem
data = get_analysis_data()
# Eşik aşıldığında uyarı gönder
if data['average_duration'] > 24: # saat cinsinden
send_alert("Süreç süresi 24 saati aşıyor!")
else:
print("Süre kabul edilebilir aralıkta")
Sorun Giderme
Script çalışmıyor
- Hata mesajları için eylem geçmişini kontrol edin
- Eylemin etkin ve zamanlanmış olduğundan emin olun
- Python sözdiziminin doğru olduğundan emin olun
Veri mevcut değil
- Veri adımında analizlerin seçildiğini doğrulayın
- Analizlerin çalıştırıldığını ve veri içerdiğini kontrol edin
- Scriptinizde veri erişim yöntemlerini gözden geçirin
Script zaman aşımı
- Performans için kodu optimize edin
- Verileri daha küçük partiler halinde işleyin
- Ağır işlemleri harici sistemlere taşıyın
Dış hizmet hataları
- API uç noktalarını ve kimlik bilgilerini kontrol edin
- Çalışma ortamının ağ bağlantısını doğrulayın
- Geçici hatalar için tekrar deneme mantığı ekleyin
İçe aktarma hataları
- Gerekli kütüphanelerin yüklü olduğundan emin olun
- Ek Python paketleri gerekiyorsa destek ile iletişime geçin
Sınırlamalar
- Scriptler sandbox ortamında çalışır
- Bazı sistem düzeyi işlemler kısıtlanmıştır
- Güvenlik politikaları nedeniyle dış ağ erişimi sınırlı olabilir
- Kaçan scriptleri önlemek için çalışma süresi sınırlıdır
İlgili Dokümantasyon
Destek
Python Script ile ilgili sorun yaşarsanız:
- E-posta: support@mindzie.com
- Script kodunuzu (gizli veriler çıkarılmış olarak) ekleyin
- Eylem geçmişinden alınan hata mesajlarını belirtin
- Beklenen ile gerçekleşen davranışı açıklayın