1

Sentryは、クライアントアプリケーションからのログとエラーをキャッチします。

Sentryでプロジェクトを作成することを私が知っている唯一の方法は、Webアプリケーションインターフェイスでフォームを手動で送信することです。

コマンドラインからSentryにプロジェクトを作成する方法(オプション、構成ファイル)を探していますか?

これは、展開スクリプトにとって非常に価値があります。そうでなければ、自動化は不可能です。

グーグルしながらこの議論を見つけましたが、答えはありません:

https://groups.google.com/d/topic/getsentry/pWglAEHaPUk/discussion

何か案が?

4

2 に答える 2

4

これはdjangoプロジェクトですが、もちろん次のことができます。

from sentry.models import Project
project = Project(...)
...
project.save()

編集:コマンドラインで機能を取得するためのカスタム管理コマンドを作成できます

質問の作成者による編集:はい、確かにそれはdjangoプロジェクトなので、djangoプロジェクトのように、次の3つのステップでデプロイを自動化しました。

  1. Sentryを起動し、ユーザー、チーム、プロジェクトを作成し、管理者のWebインターフェイスから設定を調整します
  2. 他のdjangoプロジェクトと同じようにdumpdataを実行します(sentryは暗黙的にmanage.pyを呼び出します):

    sentry --config=sentry.conf.py dumpdata --indent=2 auth > auth_data.json

    sentry --config=sentry.conf.py dumpdata --indent=2 sentry > sentry_data.json

  3. ステップバイステップでデプロイします。

    sentry --config=sentry.conf.py syncdb --noinput

    sentry --config=sentry.conf.py migrate

    sentry --config=sentry.conf.py loaddata auth_data.json

    sentry --config=sentry.conf.py loaddata sentry_data.json

かなりうまく機能します。これが他の人に役立つことを願っています。

于 2012-11-08T20:50:59.180 に答える
1

セントリーのドキュメントで公式に述べられているように:

# Bootstrap the Sentry environment
from sentry.utils.runner import configure
configure()

# Do something crazy
from sentry.models import Team, Project, User

user = User()
user.username = 'admin'
user.email = 'admin@localhost'
user.is_superuser = True
user.set_password('admin')
user.save()

team = Team()
team.name = 'Sentry'
team.owner = user
team.save()

project = Project()
project.team = team
project.owner = user
project.name = 'Default'
project.save()

key = ProjectKey.objects.filter(project=project)[0]
print 'SENTRY_DSN = "%s"' % (key.get_dsn(),)

https://docs.getsentry.com/on-premise/server/faq/

于 2013-09-10T15:12:52.210 に答える