تكوين خدمة الويب SKOOR

بدء الخدمة / إيقافها / إعادة تشغيلها / حالتها

يتم تكوين خدمة eRanger Webservice كخدمة لينكس ويمكن إدارتها باستخدام الأوامر ذات الصلة:

# systemctl start eranger-webservice
# systemctl stop eranger-webservice
# systemctl restart eranger-webservice
# systemctl status eranger-webservice

التكوين

يجب أن يعمل التكوين القياسي خارج الصندوق دون أي تغييرات.

يمكن إجراء التغييرات التالية إذا لزم الأمر:

موفرو الذكاء الاصطناعي

يُستخدم موفرو الذكاء الاصطناعي بشكل أساسي لتوليد التعليمات البرمجية من اللغة الطبيعية. ومن الأمثلة على ذلك ميزة Text2SQL لاستعلامات البيانات.

يدعم SKOOR حاليًا الموفرين التاليين:

  • SKOOR AI

    • يعمل بواسطة SKOOR، ولا حاجة لمشاركة أي بيانات مع مزودي الطرف الثالث.

    • جيد كنقطة بداية.

    • يوفر الدقة والأداء الأساسيين.

    • مطلوب اتصال HTTPS إلى ai.skoor.com.

    • مهيأ مسبقاً في كل عملية تثبيت SKOOR.

  • OpenAI

    • ربما يكون المزود الأكثر تقدماً.

    • يحتاج إلى اشتراك في واجهة برمجة التطبيقات من OpenAI.

    • مطلوب اتصال HTTPS بخوادم OpenAI API.

  • جوجل الجوزاء

    • دقة مماثلة لـ OpenAI.

    • سريع نسبيًا.

    • يحتاج إلى مفتاح API من Google Cloud.

    • مطلوب اتصال HTTPS بخوادم Google Cloud.

يمكن تكوين إعدادات الذكاء الاصطناعي (مثل مفاتيح API) في /etc/opt/eranger/eranger-webservice.cfg.

ai.enable=true 
                        # Enables or disables the AI features
ai.openaiApiKey=<key>
                        # API key can be obtained from OpenAI 
ai.googleVertexAiApiKey=/etc/opt/eranger/googleVertexAiKey.json
                        # Google JSON API key can be obtained from the Google Cloud Console.
ai.googleVertexAiProjectId=<google-project-id>
                        
ai.googleVertexAiLocation=<location>
                        # Location of the AI servers. Zurich is europe-west6

يمكن تنشيط واحد فقط من google أو openai في نفس الوقت. إذا لم يتم تكوين أي منهما google أو openai ، فسيتم استخدام SKOOR AI تلقائيًا.

منفذ تومكات

إذا لم يكن المنفذ القياسي 8090 متاحًا، فيمكن تغييره في الملف "/opt/eranger/eranger-webservice/eranger-webservice.conf":

/opt/opt/eranger/eranger-webservice/eranger-webservice.conf
# Spring Boot service config file
# Has to be in the same directory as the JAR file
MODE=service
JAVA_HOME=/opt/eranger/eranger-jre/current
APP_NAME=eranger-webservice
JAVA_OPTS="-Dserver.port=8091"
PID_FOLDER=/var/opt/run/eranger
LOG_FOLDER=/var/log/eranger
LOG_FILENAME=eranger-webservice.log

يجب تكوين نفس المنفذ في تكوين الوكيل العكسي في "/etc/httpd/conf.d/eranger-webservice-proxy.conf":

/etc/httpd/httpd/conf.d/eranger-webservice-proxy.conf
# mod_proxy setup for using httpd as a reverse proxy for tomcat
# has to placed in /etc/httpd/conf.d
ProxyPass /eranger-webservice http://localhost:8091
ProxyPassReverse /eranger-webservice http://localhost:8091
<Location "/eranger-webservice">
  setOutputFilter DEFLATE
  Require all granted
  Satisfy Any
  Order allow,deny
  Allow from all
</Location>

ملف PID

في التكوين الافتراضي، تتم كتابة ملف PID إلى "/var/opt/run/eranger".

إذا كنت تفضل مسارًا مختلفًا، فيمكن تكوينه في الملف "/opt/eranger/eranger/eranger-webservice/eranger-webservice.conf".

/opt/opt/eranger/eranger-weranger-webservice/eranger-webservice.conf
# Spring Boot service config file
# Has to be in the same directory as the JAR file
MODE=service
JAVA_HOME=/opt/eranger/eranger-jre/current
APP_NAME=eranger-webservice
JAVA_OPTS="-Dserver.port=8091"
PID_FOLDER=/new/pid/path

الإيجار المتعدد

خدمة الويب قادرة على الحصول على البيانات من عدة نسخ احتياطية لمحرك SKOOR Backends متعددة باستخدام المستأجر.

لتكوين نسخ احتياطية إضافية، يجب على المرء أن يوفر ملف تكوين eranger-webservice-<tenantId>.cfg منفصل في مجلد /etc/opt/eranger. هذا الملف هو في الأساس نسخة من ملف eranger-webservice.cfg الافتراضي مع عنوان eranger الخاص بـ eranger.

/etc/opt/opt/eranger/eranger-websevice-<tenantId>.cfg
# eRanger Server Address
eranger.address=<host of Skoor server>

ليس عليك تغيير files.root أو reports.root. يتعامل خادم الويب مع فصل هذه المجلدات بنفسه.

بعد أن يتم حفظ التهيئة، يجب أن تكون قادرًا على استرداد البيانات من محرك SKOOR المهيأ عن طريق توفير إما رأس طلب HTTP X-Tenant-Id أو معلمة URl tenantId.