Bitbucket Server 設定プロパティ

Bitbucket Server を管理する

このページの内容

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

This page describes the configuration properties that can be used to control behavior in Bitbucket Server. Create the bitbucket.properties file, in the shared folder of your home directory, and add the system properties you need, use the standard format for Java properties files.

Note that bitbucket.properties is created automatically when you perform a database migration.

変更を有効にするために、Bitbucket Server を再起動する必要があります。

システム プロパティの既定値 (存在する場合) を次の表で説明します。

このページの内容

Analytics

既定値説明
analytics.aws.enabled
true

AWS インスタンスのアナリティクス イベントが発行されるかどうかを制御します。この設定は、アナリティクス機能が有効化されている場合にのみ影響します。

アプリケーション モード

既定値説明
application.mode
default

Bitbucket のモードを制御します。現在、"mirror" と "default" がサポートされています。

添付ファイル

既定値説明
attachment.upload.max.size
10485760

システムで許可される、1 つの添付ファイルの最大サイズを定義します。この値よりも大きい添付ファイルは、ローカルに保存されることなく拒否されます。

この設定は、アバターを含む、アップロードされるすべてのデータに適用されます。一部のタイプでは、この設定よりも優先される制限が適用されている可能性があります。このようなタイプの場合、ファイルはその 2 番目の制限が適用される前にローカルに保存されます。2 番目の制限がこの制限よりも大きい場合、この制限が適用されます。

この値はバイト単位です。

監査

これらのプロパティは監査機能を制御し、記録またはデータベースに保管される監査エントリの数やそれらのサイズを決定します。これらの設定を変更すると、新しい監査エントリにのみ影響します。

監査量を増やすと、パフォーマンスに影響する可能性があります。

既定値説明
audit.highest.priority.to.log
HIGH

記録する監査イベントの最低優先度を定義します。

For example, setting the value to HIGH will result in only HIGH level events being logged, while setting the value to MEDIUM will result in MEDIUM and HIGH level events being logged.

Setting the value to NONE will cause no events to be logged.

Refer to the levels for the various events.

これは、プロジェクトやリポジトリの監査ログ画面に表示されるイベントには影響しません。

Valid values are: HIGH, MEDIUM, LOW or NONE.

audit.details.max.length
1024

1 つの監査エントリの詳細情報として保存可能な文字数を定義します。

plugin.bitbucket-audit.max.entity.rows
500

1 つのプロジェクトまたはリポジトリが監査テーブルで持つことができるエントリの最大数です。

これは、ログに保管されるデータには影響しません。

plugin.bitbucket-audit.cleanup.batch.size
1000

監査エントリ テーブルをトリミングする場合、これが 1 回のトランザクションでトリミングされる最大行数です。トランザクションの所要時間が長いために問題が発生する場合、このサイズを減らします。

これは、ログに保管されるデータには影響しません。

plugin.bitbucket-audit.cleanup.run.interval
24

トリミングが必要かどうかを確認するために監査テーブルを確認する頻度です (時間単位)。

これは、ログに保管されるデータには影響しません。

認証

See also Connecting Bitbucket Server to Crowd.

既定値説明
auth.cache.tti
5

Controls the time-to-idle for entries in the authentication cache. A short TTI (5 to 10 seconds) helps narrow the window for malicious users authenticating with outdated credentials and is recommended. Setting this to a value less than 1 will default it to the configured TTL (auth.cache.ttl).

この値は秒単位です。

auth.cache.ttl
30

認証キャッシュのエントリの time-to-live (TTL) を制御します。この値を 1 未満に設定すると、キャッシュが無効化されます。許可される最大値は 300 秒 (5 分) です。長い TTL を設定すると、古い資格情報がキャッシュに残っている場合にそれが使用できる可能性があるため、セキュリティ上のリスクがあります。既定値のような短い TTL を設定することはリモート認証システム (Crowd、LDAP) の負荷を上げる可能性がありますが、特に短い TTI と組み合わせることで、古い資格情報の漏えいのリスクを低くすることができます。

この値は秒単位です。

auth.remember-me.enabled
optional

ログイン状態を記憶する認証を無効化するか、常に実行するか、ログイン フォームでチェックボックスが選択された場合ののみ実行するかを制御します。"ログイン状態を記憶" チェックボックスは、"optional" に設定されている場合にのみ表示されます。次の値を使用できます。

  • always

    チェックボックスなし。ログインに成功すると、ログイン状態を記憶する cookie が必ず生成されます。

  • optional

    ログイン フォームにチェックボックスが表示されます。チェックボックスが選択された場合にのみ、ログイン状態を記憶する cookie が生成されます。

  • never

    ログイン状態を記憶する認証は完全に無効化されます。

auth.remember-me.cookie.name
_atl_bitbucket_remember_me

ログイン状態を記憶する認証に使用される cookie の名前を定義します。

auth.remember-me.token.expiry
30

ログイン状態を記憶するトークンの有効期限です。ログイン状態を記憶するトークンが認証に使用されると、そのトークンは無効化され、ログイン状態を記憶する新しいトークンが返されます。

この値は日単位です。

auth.remember-me.token.grace.period
60

トークンが認証に使用されたあとに、認証に再利用できる期間です。この設定により、並行認証を成功させるための猶予期間を許可できます。これは一般に、ブラウザが開始されて複数のタブを一度に開いた場合に発生します。

この値は秒単位です。

auth.remember-me.token.cleanup.interval
300

ログイン状態を記憶するトークンで失効したものをクリーンアップする頻度を制御します。

この値は分単位です。

plugin.auth-crowd.sso.enabled
false

SSO サポートを有効化するかどうかです。この設定にかかわらず、SSO 認証は、システムが SSO 用に構成された Crowd に接続されている場合にのみ有効化されます。

plugin.auth-crowd.sso.config.ttl
15

認証プラグインは、リモート Crowd サーバーから取得された SSO 構成をキャッシュします。この設定はそのキャッシュの time-to-live を制御します。

この値は分単位です。

plugin.auth-crowd.sso.config.error.wait
1

リモート Crowd サーバーから SSO 構成を取得するときにエラーが発生した場合、システムは再試行を行う前にこの期間待機します。以降の試行の待機間隔は指数関数的に増加されます (1 秒 -> 1.5 秒 -> 2.3 秒 -> 3.4 秒...)。待機時間の上限は、構成された TTL です。

この値は秒単位です。

plugin.auth-crowd.sso.http.max.connections
20

Crowd サーバーとのやり取りに使用される、コネクション プールの HTTP コネクションの最大数です。

plugin.auth-crowd.sso.http.proxy.host

SOAP トラフィックを Crowd サーバーに転送するために使用されるプロキシ サーバーの名前です。

plugin.auth-crowd.sso.http.proxy.port

プロキシ サーバーの接続ポートです (プロキシ ホストが指定されている場合はこの値も指定する必要があります)。

plugin.auth-crowd.sso.http.proxy.username

プロキシ サーバーの認証に使用されるユーザー名です (プロキシ サーバーで認証が必要な場合)。

plugin.auth-crowd.sso.http.proxy.password

プロキシ サーバーの認証に使用されるパスワードです (プロキシ サーバーで認証が必要な場合)。

plugin.auth-crowd.sso.http.timeout
5000

Crowd サーバーとのやり取りに使用される、HTTP 接続のタイムアウトです。ゼロが指定された場合、コネクションのタイムアウトはありません。

この値はミリ秒単位です。

plugin.auth-crowd.sso.socket.timeout
20000

ソケットのタイムアウトです。Crowd サーバーへの遅延が大きい場合、既定値をオーバーライドできます。

この値はミリ秒単位です。

plugin.auth-crowd.sso.session.validationinterval
3

セッションで認証認可をキャッシュするための分単位の時間です。値が 0 に設定された場合、すべての HTTP リクエストが Crowd サーバーで認証されます。

plugin.auth-crowd.sso.session.lastvalidation
atl.crowd.sso.lastvalidation

ユーザーの最後の認証の Date 値を保存するときに使用するセッション キーです。

plugin.auth-crowd.sso.session.tokenkey
atl.crowd.sso.tokenkey

ユーザーの認証トークンの String 値の格納時に使用するセッション キー。

アバター

既定値説明
avatar.max.dimension
1024

アバター画像の最大の高さ幅を制御します。アバターが許容されるファイル サイズ内であっても、この値の高さまたは幅を超過していた場合、それは却下されます。サーバーがアバターを処理するために読み込むと、高さまたは幅が大きい画像はその画像データの圧縮方法に応じ、ディスク領域を数キロバイト以上消費する可能性があります。この制限を増加させるとアバターの処理時に使用されるヒープの量が大幅に増加するため、OutOfMemoryError が発生する可能性があります。

この値はピクセル単位です。

avatar.max.size
1048576

アバターで許可される最大サイズを制御します。ディスク使用率を確保するため、このサイズよりも大きいアバターは却下され、サーバーにアップロードされません。

この値はバイト単位です。

avatar.url.default
mm

フォールバック URL を "avatar.url.format.http" または "avatar.url.format.https" 形式に定義します。ユーザーに許容可能なアバターが構成されていない場合に使用される URL 形式です。この値は URL か、Gravatar を使用している場合は Gravatar のデフォルトのアバターのいずれかの ID である可能性があります。

avatar.url.format.http
http://www.gravatar.com/avatar/%1$s.jpg?s=%2$d&d=%3$s

HTTP 経由でユーザー アバターを取得するための、既定の URL 形式を定義します。この既定設定は Gravatar サービスにより提供される一般向けアバターを使用します。

次のフォーマット パラメーターを使用できます。

  • %1$s

    MD5 ハッシュで暗号化された、ユーザーのメール アドレス。ユーザーがメール アドレスを持たない場合は "00000000000000000000000000000000"。

  • %2$d

    リクエストされたアバター サイズ。

  • %3$s

    URL エンコーディング済みのフォールバック URL。"avatar.url.default" を使用して定義されている可能性があります。

  • %4$s

    ユーザーのメール アドレス (ハッシュ化されていないもの)。ユーザーがメール アドレスを持っていない場合は空の文字列。

avatar.url.format.https
https://secure.gravatar.com/avatar/%1$s.jpg?s=%2$d&d=%3$s

HTTPS 経由でユーザー アバターを取得するための、既定の URL 形式を定義します。この既定設定は Gravatar サービスにより提供される一般向けアバターを使用します。

次のフォーマット パラメーターを使用できます。

  • %1$s

    MD5 ハッシュで暗号化された、ユーザーのメール アドレス。ユーザーがメール アドレスを持たない場合は "00000000000000000000000000000000"。

  • %2$d

    リクエストされたアバター サイズ。

  • %3$s

    URL エンコーディング済みのフォールバック URL。"avatar.url.default" を使用して定義されている可能性があります。

  • %4$s

    ユーザーのメール アドレス (ハッシュ化されていないもの)。ユーザーがメール アドレスを持っていない場合は空の文字列。

バックアップ

既定値説明
backup.drain.scm.timeout
60

SCM 処理の完了を失敗と見なすまでにバックアップで待機すべき時間を制御します。

この値は秒単位です。

backup.drain.db.timeout
90

バックアップ中のコネクション ドレインは 2 つのステージで発生します。ステージ 1 は、すべてのコネクションがプールに戻されるのを、一定期間パッシブに待機します。backup.drain.db.timeout の秒数が完了したにもかかわらずコネクションが戻らない場合にステージ 2 が開始されます。このステージでは所有スレッドを中断し、backup.drain.db.force.timeout の秒数を待機して、ロールバックと残っているコネクションのクローズを試行します。

バックアップ中にステージ 1 のコネクション ドレインになった場合、この設定はステージ 2 に進む前にデータベース操作の完了をバックアップで待機すべき時間を制御します。backup.drain.db.force.timeout をご確認ください。

この値は秒単位です。

backup.drain.db.force.timeout
30

バックアップ中にコネクション ドレインが発生するステージ 2 で、このプロパティは、割り込みによる所有スレッドの中断後のバックアップ プロセスの待機時間を制御します。設定した時間を超過すると、移行プロセスを強制的にロール バックしてコネクションをリリースし、クローズします。すべてのコネクションがプールに戻された場合、ステージ 2 はスキップされるため、このプロパティは無効になる点にご注意ください。負の値を指定すると、ステージ 2 が完全にスキップされます。backup.drain.db.timeout を参照してください。

この値は秒単位です。

ブランチ情報

既定値説明
plugin.bitbucket-branch-information.timeout
5

ブランチ情報を取得するためのタイムアウトを制御します。これは、大規模なリポジトリでは非常に時間がかかり、単一の Git プロセスを消費する場合があるためです。

この値は秒単位です。

plugin.bitbucket-branch-information.max.branches
1000

ユーザーに表示されるブランチの最大数を制御します。

ブランチ ツール

既定値説明
plugin.bitbucket-auto-merge.limit
30

1 つの自動マージ チェーンで許可されるマージの最大数を定義します。チェーンに含まれるマージの数がこの制限を超えた場合、チェーン全体がスキップされます。この制限を 0 に設定すると、マージ チェーンは常に空である必要があると見なされ、自動マージは無効化されます。

plugin.bitbucket-auto-merge.timeout
300

チェーンからの 1 つの自動マージを実行するために使用される任意のコマンドの最大実行時間または最大アイドル時間を定義します。自動マージには SCM レベルで一連のさまざまなコマンドを使用する必要がある可能性があるため、このタイムアウトは全体のマージ プロセスの所要時間の上限は定義せずに、それぞれのコマンドに割り当てられる所要時間のみを定義します。

この値は秒単位です。

plugin.bitbucket-branch-model.version.separator
[_\\-.+]

ブランチ モデルのバージョン コンポーネント セパレーターです。この値は、バージョン文字列としてパースされたブランチ名を比較のために個々のコンポーネントに分割するために使用される、正規表現のパターンです。既定値を使用すると、次の 4 文字の任意のものが比較に使用されます。_ - + .

plugin.bitbucket-branch-model.validation.prefix.length
30

ブランチ モデルでブランチのプレフィックスに許可される最大長です。

クラスタリング

既定値説明
hazelcast.node.authentication.enabled
true

Enable node authentication. When this is enabled the group name and password are verified before any other checks are run

hazelcast.enterprise.license

Hazelcast のエンタープライズ ライセンスを指定します。エンタープライズ ライセンスは必須ではありませんが、これを指定すると、2 つよりも多いノードを含むクラスタで Hazelcast Management Center を使用できる機能などの追加の Hazelcast 機能が解除され、本番環境で役立つ場合があります。

hazelcast.managementcenter.url

Hazelcast Management Center が実行されている場所の URL を指定します。URL が構成されると、クラスター内の各ノードはその URL で Management Center に接続し、それぞれのステータスをブロードキャストします。

hazelcast.group.name
${user.name}

インスタンスがジョインすべきクラスタ グループを指定します。たとえばこれを使用することで、開発クラスタと本番環境クラスタとを区別できます。

hazelcast.group.password
${user.name}

指定されたクラスタ グループにジョインするために必要なパスワードです。

hazelcast.http.sessions
local

HTTP セッションの管理方法を指定します。

次の値がサポートされます。

  • local

    HTTP セッションはノード単位で管理されます。クラスタで使用する場合、ロード バランサでスティッキー セッションが有効化されている必要があります。ノードが失敗するかシャットダウンした場合、そのノードに割り当てられていた有効は再びログインする必要があります。

  • sticky

    HTTP セッションは、スティッキー セッションを使用するように構成されたロード バランサを含むクラスタに分散あれます。ノードが失敗するかシャットダウンした場合、ユーザーの再ログインは不要です。この構成の場合、セッション管理はスティッキー セッション用に最適化され、パフォーマンスを確保するために特定のクリーンアップ タスクは行われません。

  • replicated

    HTTP セッションはクラスタで分散されます。ロード バランサをスティッキー セッション用に構成する必要はありません。

local is the recommended setting for standalone installations. For clustered installations local is the most performant option, followed by sticky and replicated.

hazelcast.local.public.address

ほとんどの環境でこれを明示的に説明する必要はありません。しかしながら、NAT を使用する場合 (Docker を使用してクラスタ ノードを開始する場合など)、リクエスト バインディングのエラーを回避するためにパブリック アドレスを明示的に構成する必要がある可能性があります。

hazelcast.network.aws
false

A boolean flag to indicate whether Hazelcast has AWS EC2 Auto Discovery enabled. When setting this property to true, either hazelcast.network.aws.iam.role or (hazelcast.network.aws.access.key and hazelcast.network.aws.secret.key) become required properties.

hazelcast.network.aws.iam.role

If hazelcast.network.aws is true, then you must either set this property to your AWS role or set hazelcast.network.aws.access.key and hazelcast.network.aws.secret.key in order to discover your cluster node instances via the AWS EC2 API.

hazelcast.network.aws.access.key

If hazelcast.network.aws is true and hazelcast.network.aws.iam.role is not set, then you must set this property to your AWS account access key, in order to discover your cluster node instances via the AWS EC2 API.

hazelcast.network.aws.secret.key

If hazelcast.network.aws is true and hazelcast.network.aws.iam.role is not set, then you must set this property to your AWS account secret key, in order to discover your cluster node instances via the AWS EC2 API.

hazelcast.network.aws.region

クエリ対象の AWS リージョン。空の場合、Hazelcast のデフォルト ("us-east-1") が使用されます。値が設定されている場合、"hazelcast.network.aws.host.header" の値がオーバーライドされます (後述)。

hazelcast.network.aws.host.header

AWS EC2 API にクエリを送信するときに使用される Host: ヘッダー。空の場合、Hazelcast のデフォルト ("ec2.amazonaws.com") が使用されます。値が設定される場合、"hazelcast.network.aws.region" はこのプロパティをオーバーライドするため、設定する必要はありません。

hazelcast.network.aws.port.range

Port to connect to on instances found via the AWS discovery mechanism. Can be a port range in the format 5701-5703 or single port. Providing a range with more than 3 ports may impact the application startup time. By default this is set to the value of the hazelcast.port property

hazelcast.network.aws.security.group.name

AWS インスタンスを絞り込むには 2 つのメカニズムがあり、これらのメカニズムは組み合わせる (AND) ことができます。

  • If hazelcast.network.aws.security.group.name is set, only instances within that security group will be selected.

  • If hazelcast.network.aws.tag.key and hazelcast.network.aws.tag.value are set, only instances with that tag key/value will be selected.

hazelcast.network.aws.tag.key

クラスタを形成するインスタンスを絞り込むために使用する AWS タグ キー。

hazelcast.network.aws.tag.value

クラスタを形成するインスタンスを絞り込むために使用する AWS タグ値。

hazelcast.network.azure
false

A boolean flag to indicate whether Hazelcast has Azure Auto Discovery enabled. When setting this property to true, hazelcast.network.azure.cluster.id, hazelcast.network.azure.group.name and hazelcast.network.azure.subscription.id become required properties. If Azure system-assigned managed identity is not enabled for the Bitbucket VMs then hazelcast.network.azure.client.id, hazelcast.network.azure.client.secret and hazelcast.network.azure.tenant.id are also required properties.

hazelcast.network.azure.cluster.id

If hazelcast.network.azure is true, then you must set this property to the name of the tag on the hazelcast vm or scale set resources, the value of the tag should be the port that hazelcast will use to communicate

hazelcast.network.azure.group.name

If hazelcast.network.azure is true, then you must set this property to the Azure resource group name of the cluster

hazelcast.network.azure.subscription.id

If hazelcast.network.azure is true, then you must set this property to your Azure subscription ID

hazelcast.network.azure.client.id

If hazelcast.network.azure is true and Azure system-assigned managed identity is not enabled for the Bitbucket VMs, then you must set this property to your Azure Active Directory Service Principal client ID

hazelcast.network.azure.client.secret

If hazelcast.network.azure is true and Azure system-assigned managed identity is not enabled for the Bitbucket VMs, then you must set this property to your Azure Active Directory Service Principal client secret

hazelcast.network.azure.tenant.id

If hazelcast.network.azure is true and Azure system-assigned managed identity is not enabled for the Bitbucket VMs, then you must set this property to your Azure Active Directory tenant ID

hazelcast.network.multicast
false

A boolean flag to indicate whether Hazelcast has multicasting enabled.

hazelcast.network.multicast.address

クラスタのマルチキャスト アドレスです。マルチキャスト ディスカバリーが有効化されている場合にメンバーを発見するために使用されます。値が設定されていない場合、Hazelcast の既定値 (224.2.2.3) が使用されます。ほとんどのネットワークで、この値を明示的に構成する必要はありません。

hazelcast.network.multicast.port
${hazelcast.port}

The multicast port to bind to. By default, this will be the hazelcast.port (5701, unless configured otherwise), and updating that setting will also update this one unless this port is configured explicitly.

hazelcast.network.tcpip
false

A boolean flag to indicate whether Hazelcast has TCP/IP enabled.

hazelcast.network.tcpip.members
localhost:5701,localhost:5702

TCP/IP が有効化されているときに Hazelcast ノードが接続すべきメンバーの一覧です。これらののはルート ノードとして機能し、クラスタ ノードが互いを発見できるようにします。このコンマ区切りの一覧にクラスタのすべてのノードを含める必要はありません。新しいノードがジョインすると、それらは接続されたノードを使用して他のクラスタ ノードを発見します。

hazelcast.port
5701

Hazelcast がクラスタ メンバーをリッスンするネットワーク ポートです。1 つのサーバーで複数のインスタンスが実行されている場合、Hazelcast は追加のノードについてこの値を自動的に増加させます。

Code Insights

既定値説明
plugin.bitbucket-code-insights.reports.expiry.days
60

コード インサイトのカードをデータベースに保持する期間を制御します。

この値は日単位です。

plugin.bitbucket-code-insights.pullrequest.changedlines.cache.max
500

インサイトの差分キャッシュに保管されるプル リクエストの差分の数を制御します。

plugin.bitbucket-code-insights.pullrequest.changedlines.cache.ttl
7200

差分キャッシュの保持期間を秒単位で制御します。

この値は秒単位です。

コメントへのいいね!

既定値説明
plugin.bitbucket-comment-likes.max.resources
500

1 つのコメントに関連付けられるいいね! の最大数です。システム上はこの数よりも多くのいいね! を作成できますが、いいね! の数を取得するための API コールの結果はここで構成される値に応じて厳密に制限され、アプリケーション ログには対応する警告が記録されます。

plugin.bitbucket-comment-likes.max.page
100

コメントへのいいね! のページの最大サイズ。

コミットのインデックス

これらのプロパティは、プッシュまたはプル リクエストのマージのあとにコミットがインデックスされる方法を制御します。

既定値説明
indexing.max.threads
4

インデックスの実行に使用されるスレッドの最大数を制御します。以降で構成するリソース制限はこれらのスレッドには適用されないため、高い値を使用するとサーバーのパフォーマンスが低下する可能性があります。

indexing.import.max.threads
1

Data Center 移行のインポート中にインデックスの実行に使用されるスレッドの最大数を制御します。以降で構成するリソース制限はこれらのスレッドには適用されないため、高い値を使用するとサーバーのパフォーマンスが低下する可能性があります。

indexing.job.batch.size
250

1 回のデータベース トランザクションでインデックスされるコミットの数を定義します。

indexing.job.queue.size
150

保留中のインデックス リクエストの最大数を定義します。この制限に到達すると、他のインデックス操作をキューに追加するための処理は拒否されます。

indexing.queue.timeout.poll
60

コミット キューで次のコミットが利用可能になるまで待機し、コミットを取得するプロセスがスタックしたと判断して処理を中止するまでの、インデックス プロセスの待機時間を制御します。

この値は秒単位です。

indexing.queue.size
1024

インデックスに使用されるキューのサイズを定義します。この制限に到達すると、プログラムにより、新しいアイテムの追加がキューに空きができるまでブロックされます。

indexing.process.timeout.execution
3600

インデックス プロセスがアウトプットを生成しているかインプットを消費しているかにかかわらず、それが中断されるまでの実行期間を制御します。

この値は秒単位です。

indexing.snapshot.timeout.execution
120

リポジトリのブランチまたはタグのステータスを取得するスナップショット生成が中断されるまでの実行期間を制御します。プロセスがアウトプットを生成しているかどうかにかかわらず、タイムアウトが適用されます。

この値は秒単位です。

indexing.snapshot.timeout.idle
${indexing.snapshot.timeout.execution}

リポジトリのブランチまたはタグのステータスを取得するスナップショット生成がアウトプットを生成しない状態で中断されるまでの実行期間を制御します。

この値は秒単位です。

コミット グラフのキャッシュ

既定値説明
commit.graph.cache.min.free.space
1073741824

キャッシュを有効化するためにディスク (<BITBUCKET_HOME>/caches 配下) で必要な空き容量を制御します。この設定により、キャッシュ プラグインでディスクが占有することを回避できます。

この値はバイト単位です。

commit.graph.cache.max.threads
2

コミット グラフのキャッシュ エントリを作成するために使用されるスレッドの数を定義します。

commit.graph.cache.max.job.queue
1000

保留中のキャッシュ作成ジョブの最大数を定義します。

変更を確認できる「コミット」

既定値説明
commit.diff.context
10

コミット差分で差分セグメントに含めるコンテキスト行の数を定義します。

commit.lastmodified.timeout
120

指定したパスのファイルへの最後の変更をストリーミングするためのタイムアウトを定義し、プロセスがキャンセルされるまでのトラバース時間に制限を適用します。このタイムアウトは実行とアイドル両方のタイムアウトとして適用されます。

この値は秒単位です。

commit.list.follow.renames
true

UI にあるファイル履歴のコマンドが既定でリネームに従うかどうかを定義します。長いコミット ログを持つリポジトリでは、この機能によって読み込み時間が大幅に増加する可能性があるため、この機能を無効化できます。

commit.message.max
262144

SCM から 1 つ以上のコミットを取得したときに読み込むコミット メッセージの最大長を制御します。この制限よりも長いコミット メッセージは切り捨てられます。既定の制限は、一般的な使用でのプロセスに影響することも、例外的なケースでシステムで大量のメモリを使用することもないように設定されています。

commit.message.bulk.max
16384

SCM からコミットを一括で取得したときに読み込むコミット メッセージの最大長を制御します。この制限よりも長いコミット メッセージは切り捨てられます。既定の制限は、一般的な使用でのプロセスに影響することも、多数のコミットが長いメッセージを持つときにシステムで大量のメモリを使用することもないように設定されています。

コンテンツ

既定値説明
content.archive.timeout
1800

アーカイブ プロセスのタイムアウトを定義し、リポジトリのアーカイブをストリーミングするまでの時間に制限を適用します。このタイムアウトは実行とアイドル両方のタイムアウトとして適用されます。

この値は秒単位です。

content.patch.timeout
1800

Defines the timeout for patch processes, applying a limit to how long it can take to stream a diff's patch before the process is canceled. This timeout is applied as both the execution and idle timeout.

この値は秒単位です。

Data Center 移行

既定値説明
migration.threadpool.size
2

スレッド プールの最大サイズ – 同時移行の最大数。

データベース

Database properties allow explicitly configuring the database the system should use. They may be configured directly in bitbucket.properties, or they may be specified during setup. Existing systems may be migrated to a new database using the in-app migration feature.

データベースが明示的に構成されていない場合、内部データベースが自動的に使用されます。使用される内部データベースの保証はありません。

If the jdbc.driver, jdbc.url, jdbc.password and jdbc.user properties are specified in bitbucket.properties when the Setup Wizard runs after installation, then those values will be used, and the Setup Wizard will not display the database configuration screen.

Warning: jdbc.driver and jdbc.url are available to plugins via the ApplicationPropertiesService. Some JDBC drivers allow the username and password to be defined in the URL. Because that property is available throughout the system (and will be included in support requests), that approach should not be used. The jdbc.username and jdbc.password properties should be used for these values instead.

既定値説明
jdbc.driver
org.h2.Driver

データベースへの接続に使用すべき JDBC ドライバ クラスです。

システムは既定で内部データベースを使用し、データをホーム ディレクトリに保存します。

次の JDBC ドライバがディストリビューションにバンドルされます。

ライセンス上の制限により、MySQL 用の JDBC ドライバはバンドルされません。管理者はこのドライバを手動でダウンロードおよびインストールする必要があります。「MySQL への接続」で手順をご確認ください。

jdbc.url
jdbc:h2:${bitbucket.shared.home}/data/db;MVCC=TRUE;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE;TRACE_LEVEL_FILE=4

データベースへの接続に使用される JDBC URL です。この URL は、接続先のデータベースに応じて異なります。適切な URL については、ご利用の JDBC ドライバのドキュメントをご確認ください。

jdbc.user
sa

データベースの認証に使用されるユーザーです。ユーザーは完全な DDL 権限を保持している必要があります。テーブル、インデックス、制約、および他の SQL オブジェクトを作成、変更、および削除できるほか、一時テーブルを作成および破棄できる必要があります。

jdbc.password

The password that the user defined by jdbc.user will connect with.

データベース プール

These properties control the database pool. The pool implementation used is HikariCP. Documentation for these settings can be found on the wiki.

これらの設定の動作を実際に確認したい場合、次の HikariCP クラスがもっとも関連しています。

  • com.zaxxer.hikari.HikariConfig

    データベース プールの構成を保持し、利用可能な設定のドキュメントを含みます。

  • com.zaxxer.hikari.pool.HikariPool

    データベース プールを提供し、コネクションを管理します。

  • com.zaxxer.hikari.util.ConnectionBag

    使用中かアイドルかにかかわらず、オープンなコネクションへの参照を保持します。

既定値説明
db.pool.rejectioncooldown
10

プールが枯渇しているためにコネクションをリースできない場合、コネクションを保持しているすべてのスレッドのスタック トレースが記録されます。これは、このログ記録に適用されるクールダウンを定義し、失敗したすべてのコネクション リクエストのスタックでスパムが発生することを防ぎます。

この値は分単位です。

db.pool.size.idle
5

プールでアイドル状態を保持するコネクションの数を定義します。システムではここで構成された値よりも多くのアイドル コネクションを保持する可能性があります。コネクションはプールから借りられるため、この値を使用して、プールでアイドル状態を保持するために新しいコネクションを積極的にオープンするかどうかを制御し、負荷のスパイクが発生したときのスムーズな対応に役立てることができます。

db.pool.size.max
80

プールで一度にオープンできるコネクションの最大数を定義します。

db.pool.timeout.connect
15

システムが新しいコネクションのオープンを試行するときに、例外をスローするまでの時間を定義します。データベースが利用できない場合、ここで構成した秒数の間、システムが起動時にハングする可能性があります。ここで構成するタイムアウトには余裕を持たせないことをおすすめします。

この値は秒単位です。

db.pool.timeout.idle
1750

コネクションがアイドル状態のときにクローズするまでの最長時間を定義します。短命のデータベース コネクションを作成および破棄する (これはプールの目的に合いません) ことを回避するため、ここでは余裕を持った値を使用することをおすすめします。

: データベース サーバーで積極的なタイムアウトを構成している場合、データベース サーバー側からコネクションをクローズすることによる問題を回避するために、ここではさらに積極的なタイムアウトを使用する必要があります。ここで適用する値は、アイドルなコネクションをデータベース サーバーがクローズする前にシステムでクローズするようにする必要があります。値は db.pool.timeout.lifetime よりも小さい必要があります。大きい場合、タイムアウトは無視されます。

この値は秒単位です。

db.pool.timeout.leak
0

コネクションをチェックアウトするときに、潜在的なリークと報告するまでの最長時間を定義します。既定では、リーク検知は有効化されていません。バックアップの作成やデータベースの移行などの長期実行タスクはこのしきい値を超え、偽陽性の検出をトリガーする可能性があります。

この値は分単位です。

db.pool.timeout.lifetime
30

コネクションの最大ライフタイムを定義します。このしきい値を超えるコネクションは最初にアイドル状態になったときにクローズされ、新しいコネクションがオープンされます。

この値は分単位です。

データベース スキーマ

これらのプロパティはデータベース スキーマの管理方法の側面を制御します。

既定値説明
db.schema.lock.maxWait
30

システムがスキーマ ロックを取得するまでの待機時間を定義します。短い値を使用すると、サーバーの起動時にロックがほかのインスタンスによって保持されている場合や、前回の起動がロックの保持中に中断されたためにロックが正常に解放されなかったときの、長時間の遅延を防ぐことができます。これは、システムがスキーマの更新を行おうとしていたときに終了されたときに発生する可能性があります。

この値は秒単位です。

db.schema.lock.pollInterval
5

スキーマ ロックを取得するまでの試行間隔を定義します。ポーリング間隔が長い場合、負荷は下がりますが、ロックの取得に遅延が発生する可能性があります。

この値は秒単位です。

診断

既定値説明
diagnostics.alert.dispatcher.max.threads
5

アラート ディスパッチャー スレッドの最大数です。ディスパッチャー スレッドの数は、アラート キューが満杯で、ここで構成された制限に到達していない場合にのみ増加します。

diagnostics.alert.dispatcher.queue.size
250

キューに追加できるイベントの数です。キューが満杯で、イベントを処理するためのスレッドを作成できなくなると、イベントは破棄されます。

diagnostics.issues.event.dropped.threaddump.cooldown.seconds
60

ドロップされたイベントに関するアラートについてスレッド ダンプを生成する頻度を制御します。スレッド ダンプの取得は計算コストが高くなり、頻繁に実行すると大量のデータが生成される可能性があります。

この値は秒単位です。

diagnostics.issues.event.slow.listener.time.millis
15000

低速なイベント リスナーについてのアラートを報告するタイミングを構成します。イベント リスナーがイベントの処理に、ここで構成された時間よりも時間がかかっている場合、警告アラートが報告され、システムのヘルス ページに表示されます。

この値はミリ秒単位です。

diagnostics.issues.event.slow.listener.overrides

特定のイベント リスナーや特定のプラグインのオーバーライドを構成します。この設定は、特定のイベント リスナーまたはプラグインの "slow event listner detected" アラートを抑制するのに使用できます。値は個々のトリガーの設定のカンマ区切りのリストである必要があります。トリガーはプラグインキー、またはプラグインキーにイベント リスナーのクラス名をつなげたものです。

オーバーライドは、diagnostics.issues.event.slow.listener.time.millis で指定された値よりも緩い制限が指定された場合にのみ考慮されます。短いオーバーライドを設定しても (例: 既定が 15000 のときに 1000 を設定)、影響はありません。

次の例は com.company.example-plugin のトリガーを 60 秒に設定し、同じプラグインの com.company.RepositoruCreatedListener イベント リスナーの制限を 30 秒に制限します。

com.company.example-plugin:60000, com.company.example-plugin.com.company.RepositoryCreatedListener:30000

値はミリ秒単位で構成されます。

diagnostics.issues.hookscript.slow.time.seconds
30

Defines the maximum amount of time an individual hook script is allowed to execute or idle before a warning would be logged in the diagnostics plugin.

This value is in seconds. The default is 30 seconds, with a 10 second minimum

diagnostics.alert.retention.time.minutes
43200

アラートがデータベースに保持されているときに、定期的な切り捨ての対象になるまでの最小時間を構成します。既定 (43200 分) は 30 日です。

この値は分単位です。

diagnostics.alert.truncation.interval.minutes
1440

アラートをデータベースから切り捨てるための頻度を構成します。新しいインスタンス (または完全なクラスタ) の (再) 起動の場合、これは切り捨てが最初に実行されるまでの初回のオフセットです。既定 (1440 分) は 24 時間です。

この値は分単位です。

表示

これらのプロパティは、web UI に表示される情報の上限を制御します。

既定値説明
display.max.source.lines
20000

Controls how many lines of a source file will be retrieved before a warning banner is shown and the user is encouraged to download the raw file for further inspection. This property relates to page.max.source.lines in that up to (display.max.source.lines/page.max.source.lines) requests will be made to view the page.

ダウンロード

既定値説明
http.download.raw.policy
Smart

raw コンテンツのダウンロード ポリシーを制御します。

次の値を使用できます。

  • Insecure

    すべてのファイル タイプをブラウザで表示することを許可します。

  • Secure

    すべてのファイル タイプをブラウザで表示するのではなくダウンロードすることを要求します。

  • Smart

    "危険な" ファイル タイプについては、ブラウザで表示するのではなくダウンロードすることを要求します。

These options are case-sensitive and defined in com.atlassian.http.mime.DownloadPolicy

Elasticsearch

Bitbucket Server 4.6+ には Elasticsearch の組み込みインスタンスが同梱されます。管理者はこれらのプロパティを使用して、Elasticsearch インスタンスのベース URL を構成し、Elasticsearch インスタンスへのアクセスにユーザー名とパスワードの形式を使用することで基本的なセキュリティ対策を有効化できます。

Warning: If an Elasticsearch parameter is set in the properties file, it cannot be edited later from the admin UI. Any changes that need to be made to the Elasticsearch configuration must be made within the bitbucket.properties file.

既定値説明
plugin.search.elasticsearch.baseurl

Elasticsearch インスタンスのベース URL を設定します。

plugin.search.elasticsearch.username

Elasticsearch インスタンスに接続するためのユーザー名です。

plugin.search.elasticsearch.password

Elasticsearch インスタンスに接続するためのパスワードです。

plugin.search.elasticsearch.aws.region

Bitbucket が実行されている AWS リージョンです。これを設定すると、Amazon Elasticsearch Service へのリクエスト署名が有効化されます。

plugin.search.indexing.max.batch.size

Elasticsearch に送信されるインデックス バッチの最大サイズです。この値は Elasticsearch でサポートされる http リクエスト ペイロードの最大コンテンツ長よりも小さい必要があります。既定値は 15_728_640 (= 15 MB です (AWS で実行されている Elasticsearch インスタンスの場合、この値は Elasticsearch インスタンスの Network Limit サイズよりも小さい必要があります)。

この値はバイト単位です。

イベント

これらのプロパティは、非同期イベントのディスパッチに使用されるスレッドの数を制御します。この数値の設定が高すぎる場合、コンテキスト スイッチに伴う追加のオーバーヘッドのため、システムの高負荷時に全体的なスループットが低下する恐れがあります。イベントのディスパッチに使用できるスレッド数の設定が少なすぎる場合、イベントが待機状態となり、結果としてスループットが低下する可能性があります。これらの既定値は、利用可能な CPU コア数に応じてディスパッチャ スレッドの数を拡張します。

既定値説明
event.dispatcher.core.threads
0.8*${scaling.concurrency}

The minimum number of threads that is available to the event dispatcher. The ${scaling.concurrency} variable is resolved to the number of CPUs that are available.

event.dispatcher.max.threads
${scaling.concurrency}

イベント ディスパッチャー スレッドの最大数です。ディスパッチャー スレッドの数は、イベント キューが満杯で、ここで構成された制限に到達していない場合にのみ増加します。

event.dispatcher.queue.size
4096

キューに追加できるイベントの数です。キューが満杯で、イベントを処理するためのスレッドを作成できなくなると、イベントは破棄されます。

event.dispatcher.queue.rejectioncooldown
10

When an event cannot be dispatched because the queue is full, the stack traces of all busy event processing threads will be logged. This defines the cooldown that is applied to that logging to prevent spamming the stacks in the logs on every rejected event.

この値は分単位です。

event.dispatcher.keepAlive
60

The time a dispatcher thread will be kept alive when the queue is empty and more than core.threads threads are running.

この値は秒単位です。

実行体

Controls the thread pool that is made available to plugins for asynchronous processing.

既定値説明
executor.max.threads
${scaling.concurrency}

Controls the maximum number of threads allowed in the common ExecutorService. This ExecutorService is used by for background tasks, and is also available for plugin developers to use. When more threads are required than the configured maximum, the thread attempting to schedule an asynchronous task to be executed will block until a thread in the pool becomes available. By default, the pool size scales with the number of reported CPU cores. Note: A minimum of 4 is enforced for this property. Setting the value to a lower value will result in the default 4 threads being used.

機能

These properties control high-level system features, allowing them to be disabled for the entire instance. Features that are disabled at this level are disabled completely. This means instance-level configuration for a feature is overridden. It also means a user's permissions are irrelevant; a feature is still disabled even if the user has the system admin permission.

既定値説明
feature.attachments
true

Controls whether users are allowed to upload attachments to repositories they have access to. If this feature is enabled and later disabled, attachments which have already been uploaded are not automatically removed.

feature.auth.captcha
true

Controls whether to require CAPTCHA verification when the number of failed logins is exceeded. If enabled, any client who has exceeded a set limit for failed logins using either the web interface or Git hosting will be be required to authenticate in the web interface and successfully submit a CAPTCHA before continuing. Disabling this will remove this restriction and allow users to incorrectly authenticate as many times as they like without penalty.

Warning: It is strongly recommended to keep this setting enabled. Disabling it has the following ramifications:

  • Users may lock themselves out of any underlying user directory service (LDAP, Active Directory etc) because the system will pass through all authentication requests (regardless of the number of previous failures) to the underlying directory service.

  • For installations where Bitbucket Server is used for user management or a directory service with no limit on failed login attempts is used, the system will be vulnerable to brute-force password attacks.

feature.commit.graph
true

Controls whether a commit graph is displayed to the left of the commits on the repository commits page.

feature.diagnostics
true

Controls whether diagnostics is enabled. Diagnostics looks for known anti-patterns such as long-running operations being executed on event processing threads and identifies the responsible plugins. Diagnostics adds a little bit of overhead, and can be disabled if necessary.

feature.file.editor
true

Controls whether users can edit repository files in the browser and via REST.

When set to false, the edit UI and REST interface are disabled globally.

feature.forks
true

Controls whether repositories can be forked. This setting supersedes and overrides instance-level configuration. If this is set to false, even repositories which are marked as forkable cannot be forked.

feature.getting.started.page
true

Controls whether new users are redirected to a getting started page after their first login.

feature.git.rebase.workflows
true

Controls whether rebase workflows are enabled for Git repositories. This can be used to fully disable all of the Git SCM's built-in rebase support, including:

  • "Rebase and fast-forward" and "Rebase and merge" merge strategies - "Rebase" action for pull requests - "Rebase" action for ref sync

When this feature is disabled, repository administrators and individual users cannot override it. However, third-party add-ons can still use the Java API to rebase branches or perform rebase "merges".

feature.data.center.migration.export
true

Controls whether Data Center migration archives can be generated on this instance.

feature.data.center.migration.import
true

Controls whether Data Center migration archives can be imported into the instance. Note that this feature is only available for Data Center installations

feature.personal.repos
true

個人リポジトリを作成できるかどうかを制御します。

When set to false, personal repository creation is disabled globally.

feature.public.access
true

Public access allows anonymous users to be granted access to projects and repositories for read operations including cloning and browsing repositories. This is controlled normally by project and repository administrators but can be switched off system wide by setting this property to false. This can be useful in sensitive environments.

feature.pull.request.deletion
true

Controls whether the system allows pull requests to be deleted via the UI and REST. Disabling this feature will prevent pull request deletion in all repositories, including by admins and sysadmins, and will override any settings applied to individual repositories.

feature.pull.request.suggestions
true

Controls whether the system allows users to add pull request suggestions through inline comments via the UI.

feature.rate.limiting
true

Controls whether HTTP requests will be rate limited per user. If this is enabled, repeated HTTP requests from the same user in a short time period may be rate limited. If this is disabled, no requests will be rate limited.

feature.smart.mirrors
true

Controls whether smart mirrors can be connected to the instance. Note that this feature is only available for Data Center installations

feature.user.time.zone.onboarding
true

Controls whether users with mismatching time zones are shown an alert prompting them to change their user time zone.

File editor

既定値説明
content.upload.max.size
5242880

Controls the maximum allowed file size when editing a file through the browser or file edit REST endpoint

This value is in bytes. Default is 5 MiB

Footer

既定値説明
footer.links.contact.support

Controls whether the Contact Support link is displayed in the footer. If this is not set, then the link is not displayed. Otherwise, the link will redirect to the URL or email that is provided.

Example formats:

Fork Syncing (Ref Syncing)

既定値説明
plugin.bitbucket-repository-ref-sync.fetch.timeout
300

Defines the maximum amount of time fetch commands used to synchronize branches in bulk are allowed to execute or idle. Because fetch commands generally produce the majority of their output upon completion, there is no separate idle timeout. The default value is 5 minutes.

この値は秒単位です。

plugin.bitbucket-repository-ref-sync.merge.timeout
300

Defines the maximum amount of time any command used to merge upstream changes into the equivalent branch in a fork is allowed to execute or idle. Since merging branches may require a series of different commands at the SCM level, this timeout does not define the upper bound for how long the overall merge process might take; it only defines the duration allotted to any single command.

この値は秒単位です。

plugin.bitbucket-repository-ref-sync.rebase.timeout
300

Defines the maximum amount of time any command used to rebase a fork branch against upstream changes is allowed to execute or idle. Since merging branches may require a series of different commands at the SCM level, this timeout does not define the upper bound for how long the overall rebase process might take; it only defines the duration allotted to any single command.

この値は秒単位です。

plugin.bitbucket-repository-ref-sync.threads
3

Controls the number of threads used for ref synchronization. Higher values here will help synchronization keep up with upstream updates, but may produce noticeable additional server load.

Hibernate

既定値説明
hibernate.format_sql
${hibernate.show_sql}

When hibernate.show_sql is enabled, this flag controls whether Hibernate will format the output SQL to make it easier to read.

hibernate.jdbc.batch_size
20

Controls Hibernate's JDBC batching limit, which is used to make bulk processing more efficient (both for processing and for memory usage).

hibernate.show_sql
false

Used to enable Hibernate SQL logging, which may be useful in debugging database issues. This value should generally only be set by developers, not by customers.

Hook Scripts

既定値説明
hookscripts.output.max
32768

Applies a limit to how many bytes a single hook script can write to stderr or stdout. The limit is enforced separately for each, so a limit of 32768 allows for a maximum of 65536 bytes of combined output from a single script. Output beyond the configured limit is truncated, and a message is included to indicate so.

This value is in bytes. The default is 32K, with a 16K minimum.

hookscripts.path.shell

Defines the location of bash.exe, which is used when invoking hook scripts on Windows. This property is ignored on other platforms; only Windows requires using a shell to invoke hook scripts.

hookscripts.size.max
10485760

The size a script can be when it is uploaded.

この値はバイト単位です。

hookscripts.timeout
120

Defines the maximum amount of time an individual hook script is allowed to execute or idle. Since multiple hook scripts can be registered, this timeout does not define an upper bound for how long overall execution can take; it only defines the duration allotted to any single hook script.

This value is in seconds. The default is 120 seconds, with a 30 second minimum

Importer

既定値説明
plugin.importer.external.source.request.socket.timeout
30

Controls how long requests to external repository source servers can continue without producing any data before the importer gives up.

この値は秒単位です。

plugin.importer.external.source.request.timeout
30

Controls how long requests to external repository source servers can proceed before the importer gives up.

この値は秒単位です。

plugin.importer.import.repository.thread.max
8

Maximal size of thread pool – the maximum number of concurrent repository imports.

plugin.importer.repository.fetch.timeout.execution
360

Defines the execution timeout for fetch processes, applying a hard limit to how long the operation is allowed to run even if it is producing output or reading input. The default value is 6 hours.

この値は分単位です。

plugin.importer.repository.fetch.timeout.idle
60

Defines the idle timeout for fetch processes, applying a limit to how long the operation is allowed to execute without either producing output or consuming input. The default value is 60 minutes.

この値は分単位です。

JMX

See Enabling JMX counters for performance monitoring.

既定値説明
jmx.enabled
false

Controls whether JMX management interfaces for the system and its libraries are registered.

Note: Some libraries may register their JMX management interfaces regardless of this setting.

Jira

既定値説明
plugin.jira-integration.comment.issues.max
500

Controls the maximum result size allowed when retrieving Jira issues linked to comments.

plugin.jira-integration.pullrequest.attribute.commits.max
100

Controls the maximum number of commits to retrieve when retrieving attributes associated with commits of a pull-request. This value must be between 50 and 1000, which are imposed as lower and upper bounds on any value specified here.

plugin.jira-integration.remote.page.max.issues
20

Controls the maximum number of issues to request from Jira. This value must be between 5 and 50, which are imposed as lower and upper bounds on any value specified here.

plugin.jira-integration.remote.timeout.connection
5000

The connection timeout duration in milliseconds for requests to Jira. This timeout occurs if the Jira server does not answer. e.g. the server has been shut down. This value must be between 2000 and 60000, which are imposed as lower and upper bounds on any value specified here.

この値はミリ秒単位です。

plugin.jira-integration.remote.timeout.socket
10000

The socket timeout duration in milliseconds for requests to Jira. This timeout occurs if the connection to Jira has been stalled or broken. This value must be between 2000 and 60000, which are imposed as lower and upper bounds on any value specified here.

この値はミリ秒単位です。

plugin.jira-development-integration.reindex.pullrequests.commit.message.max
${commit.message.bulk.max}

Controls the maximum length of the commit message to be loaded when reindexing pull requests. Any commit messages longer than this limit will be truncated.

Setting this value less than or equal to 0 will prevent indexing commits when reindexing pull requests, which may be useful for sysadmins if including commits results in excessive load on the server.

plugin.jira-development-integration.reindex.pullrequests.command.timeout
300

Defines the timeout for streaming commits when reindexing pull requests. Pull requests are reindexed in batches, with a separate process for each batch. If a batch's process times out, subsequent batches will be skipped.

This value is in seconds, and is applied as both the execution and idle timeout.

Jira Automatic Transition Trigger Events

These properties control whether events should be converted into Remote Events so they can trigger automatic issue transitions in Jira.

既定値説明
plugin.dev-summary.pr.commits.threshold
${plugin.jira-integration.pullrequest.attribute.commits.max}

Limit the number of commits to be scanned per pull request

plugin.dev-summary.pr.events.enabled
true

Controls whether pull request events should be published

plugin.dev-summary.branch.events.threshold
10

Limit the number of branch events sent per synchronization If set to zero then no branch events will be published

plugin.dev-summary.commit.events.threshold
100

同期ごとに送信されるコミット イベントの数を制限します。ゼロに設定するとコミット イベントは発行されません。

plugin.dev-summary.issuechanged.events.threshold
100000

Limit the number of issue changed events sent per synchronization. Issue changed events are based on the issue keys within the commit messages for commit events or within branch names for branch events. For branches, this value is the maximum of branches considered. For commits, this value is the maximum number of commits considered. If set to zero then no issue changed events will be published

plugin.dev-summary.issue.commits.threshold
100

Limit the number of commits to be returned per issue

plugin.dev-summary.repository.trigger.settings.enabled
false

Controls whether the Jira triggers page is visible on repository settings

Job Scheduler

Controls the scheduler that processes background jobs submitted by the system and by plugins.

既定値説明
scheduler.history.expiry.days
30

Controls how long job history is remembered after it is last updated before it expires. Job history in the "RunDetails" class available to plugins from atlassian-scheduler is only valid for the last run of the job on the same cluster node. Calls to retrieve RunDetails for the same job on different cluster nodes may return different results.

This value is in days. The value cannot be negative.

scheduler.refresh.interval.minutes
1

Controls the frequency at which the scheduler will automatically poll for changes to clustered jobs. If the value is positive, then the scheduler will refresh its queue of clustered jobs at the specified interval in minutes. If the value is 0 or negative, then jobs submitted on one cluster node will never be scheduled on other cluster nodes. It is not recommended to modify this setting unless recommended by Atlassian Support.

This value is in minutes. Using 0, or a negative value, disables clustering of background jobs completely.

scheduler.shutdown.timeout
15

The number of seconds to wait for running jobs to end after calling 'shutdown' on the scheduler service.

この値は秒単位です。

scheduler.worker.threads
4

Controls the number of worker threads that will accept jobs from the queue on each cluster node. If the value is 0 or negative, then the scheduler's default of 4 threads will be used.

Liquibase

既定値説明
liquibase.commit.block.size
10000

The maximum number of changes executed against a particular Liquibase database before a commit operation is performed. Very large values may cause DBMS to use excessive amounts of memory when operating within transaction boundaries. If the value of this property is less than one, then changes will not be committed until the end of the change set.

ログ

Logging levels for any number of loggers can be set in bitbucket.properties using the following format:

logging.logger.{name}={level}

To configure all classes in the com.atlassian.bitbucket package to DEBUG level:

logging.logger.com.atlassian.bitbucket=DEBUG

To adjust the ROOT logger, you use the special name ROOT (case-sensitive):

logging.logger.ROOT=INFO

移行

Draining database connections during database migration happens in two stages. Stage 1 passively waits a set amount of time for all connections to be returned to the pool. If connections are still leased when migration.drain.db.timeout seconds has elapsed then stage 2 begins and will interrupt the owning threads, wait migration.drain.db.force.timeout seconds and finally attempt to roll back and close any remaining connections.

既定値説明
migration.drain.db.timeout
${backup.drain.db.timeout}

In stage 1 of draining connections during migration, this setting controls how long the migration should wait for outstanding database operations to complete before moving to stage 2. See migration.drain.db.force.timeout

この値は秒単位です。

migration.drain.db.force.timeout
${backup.drain.db.force.timeout}

In stage 2 of draining connections during migration, this property controls how long the migration process should wait (after interrupting the owning threads) for those threads to release the connections before forcibly rolling back and closing them. Note if all connections have been returned to the pool stage 2 is skipped and so this property has no effect. A negative value will skip stage 2 completely. See migration.drain.db.timeout

この値は秒単位です。

Mirroring

For mirror instances, this controls whether Large File Support (LFS) downloads are always requested from the upstream.If enabled, LFS downloads are always requested from the upstreamIf disabled, LFS downloads are served from the mirror

既定値説明
plugin.mirroring.farm.operation.callback.timeout
300

Defines how long a distributed operation in a mirror farm will wait for responses from other farm members before timing out.

This values is in seconds.

plugin.mirroring.farm.operation.max.inflight
1000

Defines the maximum number of in-flight operations to keep track of per operation type before evicting the eldest.

plugin.mirroring.farm.operation.refchange.chunk.timeout
14400

Defined how long to wait before timing out an operation to distribute and fetch refs This value is in seconds

plugin.mirroring.farm.operation.update.refs.timeout
1800

Defined how long to wait before timing out a update ref command This values is in seconds

plugin.mirroring.farm.max.lock.acquisition.attempts
1800

Defines the number of times an attempt is made to acquire a lock on a repository during initial synchronization before giving up.

plugin.mirroring.farm.max.chunk.size
5000

Defines the maximum number of ref-changes before they will be split into a new chunk.

plugin.mirroring.farm.operation.threads
5

Defines the maximum thread pool size for executing distributed operations.

plugin.mirroring.farm.operation.initial.retry.delay
1

Defines how long the system should wait before retrying an operation that has failed the first time.

This values is in seconds.

plugin.mirroring.farm.operation.retry.attempts
5

Defines the maximum number of times an operation is attempted before giving up and the failure is propagated.

plugin.mirroring.http.write.enabled
true

For mirror instances, this controls whether SCM write operations should be allowed for HTTP requests.

If enabled, write requests are redirected to the upstream server.

If disabled, an error message will be displayed when attempting a push, etc.

plugin.mirroring.lfs.download.upstream
false
plugin.mirroring.ssh.upstream.proxying.enabled
true

For upstream/primary instances, this controls whether SCM commands proxied by a mirror over SSH should be allowed.

If enabled, such proxied commands are performed on the upstream with the same user identity, rights and privileges as the user executing the command on the mirror.

If disabled, an error message will be sent when a user attempts to execute a command that must be proxied on the upstream (such as a push).

plugin.mirroring.ssh.proxy.enabled
true

For mirror instances, this controls whether compatible SCM commands are proxied to the upstream on behalf of the user.

If enabled, such commands are performed on the upstream by the mirror acting with the same user identity, rights and privileges as the user executing the command on the mirror.

If disabled, an error message will be sent to the user unless the command can be safely executed on the mirror (e.g. whoami).

Note that SSH push proxying is not supported for mirrors of bitbucket.org and this flag is ignored.

plugin.mirroring.ssh.proxy.parseconfig
false

This controls whether the SSH client created to proxy SCM commands is configured with the runtime user's SSH config file (usually found at ~/.ssh/config)

This is disabled by default but may be enabled if features like host aliasing are required.

plugin.mirroring.ssh.proxy.upstream.timeout.execution
86400

Defines a hard limit for the amount of time that a proxied push to an upstream over SSH can run for even if it is producing input/output

This values is in seconds.

plugin.mirroring.ssh.proxy.upstream.timeout.idle
1800

Defines an idle timeout when proxying pushes over SSH to an upstream server. If no data is sent or received in this amount of time the connection will be terminated.

This values is in seconds.

plugin.mirroring.strict.hosting.status
false

Controls whether the mirror http status endpoint will return a 200 status code only when the mirror is synchronized. NOTE Use with caution as at least one mirror node must always be accessible from the upstream server. This is intended for deployments using advanced load balancer configurations.

plugin.mirroring.upstream.url

Defines where the mirror server should be mirroring from, this is also referred to as the base URL of the upstream server. Only define this property for mirror servers.

plugin.mirroring.upstream.namespace

Defines the namespace of the upstream server at initial registration, to be used in the clone URL for repositories mirrored from this server. Only used for mirror servers.

plugin.mirroring.capabilities.refresh.interval
10

Controls how frequently the mirror will attempt to refresh the capabilities from the upstream server.

この値は分単位です。

plugin.mirroring.remote.command.timeout.idle
300

Defines the idle timeout for remote commands, applying a limit to how long the operation is allowed to execute without either producing output or consuming input. The default value is 5 minutes.

この値は秒単位です。

plugin.mirroring.state.refresh.interval
1

Controls how frequently the mirror will attempt to refresh its state from the upstream server.

この値は分単位です。

plugin.mirroring.synchronization.delay.initial
15

Controls how long after startup the first full synchronization should be attempted.

この値は秒単位です。

plugin.mirroring.synchronization.fetch.timeout.execution
172800

Defines the execution timeout for fetch processes, applying a hard limit to how long the operation is allowed to run even if it is producing output or reading input. The default value is 48 hours.

この値は秒単位です。

plugin.mirroring.synchronization.interval
3

Controls how frequently a full synchronization with the upstream server should run

この値は分単位です。

plugin.mirroring.synchronization.ls-remote.timeout
15

Controls how long to wait for an ls-remote command to the upstream server before it times out.

この値は分単位です。

plugin.mirroring.synchronization.max.failures
3

Controls the number of consecutive failed synchronizations on a repository before the mirror gives up.

plugin.mirroring.synchronization.repository.page.size.max
100

Controls how large the pages should be when requesting upstream repositories

plugin.mirroring.upstream.auth.cache.ttl
300

Controls how long to cache the result of authentication requests made against the primary server such that if the same credentials are provided to the mirror within that period, the same result is used to calculate the outcome of the authentication and a remote (network) calls for the authentication request is avoided.

注意: これは両方の認証の成功 (有効なユーザー名 / パスワード、ユーザーに登録された SSH キー) だけでなく、失敗 (不正なユーザー名 / パスワードの組み合わせ、未知の SSH キー) もキャッシュします。

Also note: that cache entries expire after they are inserted, not after the last access. Repeatedly making authentication requests to the mirror with the same credentials will not prevent expiry of the result from the cache.

この値は秒単位です。

A positive value will cache an authentication result for the configured period. A non-positive value will disable the cache and cause all authenticated requests to be executed remotely every time. Defaults to 5 minutes.

plugin.mirroring.upstream.auth.cache.max
-1

Configures the maximum number of authentication cache entries. Cache entries for Bitbucket Server mirrors can be heavy for certain permission schemes so this setting can control how much memory is devoted to this cache.

For Bitbucket Server mirrors, there is one cache entry consumed for each combination of {user credentials, authentication method (HTTP basic/SSH)}

For bitbucket.org mirrors, there is one cache entry consumed for each combination of {user credentials, authentication method (HTTP basic/SSH), repository}

A negative value indicates an unlimited cache. A zero value indicates the cache should be disabled. A positive value indicates a specific cache limit. Defaults to unlimited.

plugin.mirroring.upstream.auth.cache.fallback.ttl
1800

Controls the expiry of values in a secondary cache (separate to plugin.mirroring.upstream.auth.cache.expiry) which caches the result of authentication requests to be used to recover from remote authentication request fails for environmental or connectivity reasons. The types of problems this cache will try to overcome are network partition, request timeout, socket timeout, thread interruption, invalid HTTP response codes or entities from the primary.

注意: これは両方の認証の成功 (有効なユーザー名 / パスワード、ユーザーに登録された SSH キー) だけでなく、失敗 (不正なユーザー名 / パスワードの組み合わせ、未知の SSH キー) もキャッシュします。

Also note: that cache entries expire after they are inserted, not after the last access. Repeatedly making authentication requests to the mirror with the same credentials will not pause expiry of the result from the cache.

この値は秒単位です。

A positive value will cache the authentication results for the configured period. If the value is postive and smaller than plugin.mirroring.upstream.auth.cache.expiry it will be adjusted upwards. A non-positive value will disable the cache and cause any failing authentication requests to not attempt recovery using a previously changed result thus failing any related authentication requests by clients. Defaults to half an hour.

plugin.mirroring.upstream.auth.cache.fallback.max
-1

Configures the maximum number of fallback authentication cache entries. Cache entries for Bitbucket Server mirrors can be heavy for certain permission schemes so this setting can control how much memory is devoted to this cache.

For Bitbucket Server mirrors, there is one cache entry consumed for each combination of {user credentials, authentication method (HTTP basic/SSH)}

For bitbucket.org mirrors, there is one cache entry consumed for each combination of {user credentials, authentication method (HTTP basic/SSH), repository}

A negative value indicates an unlimited cache. A zero value indicates the cache should be disabled. A positive value indicates a specific cache limit. Defaults to unlimited.

plugin.mirroring.upstream.event.ref.change.max.count
25

Defines the maximum number of ref-changes that will be published to the upstream server as part of the RepositorySynchronizedEvent. This prevents event objects from occupying unbounded amounts of memory while they are queued to be published or processed.

plugin.mirroring.upstream.request.socket.timeout
15

Controls how long active requests to upstream servers can continue without producing any data before the mirror gives up. Must be a value smaller than plugin.ssh.auth.timeout my a decent margin if auth fallback caching is to be effective for socket timeouts

この値は秒単位です。

plugin.mirroring.upstream.request.timeout
15

Controls how long requests to upstream servers can proceed before the mirror gives up. Must be a value smaller than plugin.ssh.auth.timeout my a decent margin if auth fallback caching is to be effective for request timeouts

この値は秒単位です。

通知

既定値説明
plugin.bitbucket-notification.mail.max.comment.size
2048

単一コメントの最大許容文字数 (バイト数ではありません)。超過した文字は切り捨てられます。

plugin.bitbucket-notification.mail.max.description.size
2048

Controls the maximum allowed size of a single description in characters (not bytes). Extra characters will be truncated.

plugin.bitbucket-notification.mentions.enabled
true

Controls whether mentions are enabled

plugin.bitbucket-notification.max.mentions
200

Controls the maximum number of allowed mentions in a single comment

plugin.bitbucket-notification.sendmode.default
BATCHED

Default mode for sending notifications for users who have not set an explicit preference.

This value is either BATCHED or IMMEDIATE.

plugin.bitbucket-notification.batch.min.wait.minutes
10

The minimum time to wait for new notifications in a batch before sending it (inactivity timeout).

この値は分単位です。

plugin.bitbucket-notification.batch.max.wait.minutes
30

The maximum time to wait since the first notification of a batch before sending it (staleness avoidance timeout).

この値は分単位です。

plugin.bitbucket-notification.batch.notification.flush.limit
40

The maximum number of notifications collected in a batch before the batch is sent automatically. Once this number of notifications is reached, the batch will be sent regardless of the time settings.

POST service webhook

See POST service webhook for Bitbucket Server for more information.

既定値説明
plugin.com.atlassian.stash.plugin.hook.threadPoolCoreSize
2

スレッド プールのコア サイズ – 同時フックの通知の既定数。

plugin.com.atlassian.stash.plugin.hook.threadPoolMaxSize
3

スレッド プールの最大サイズ – 同時フックの最大通知数。

plugin.com.atlassian.stash.plugin.hook.queueSize
1024

未送信のキュー リクエストを保持するキューの最大サイズ。

When this size is exceeded the oldest unsent message will be dropped and a warning message logged.

plugin.com.atlassian.stash.plugin.hook.connectionTimeout
10000

フック要求のコネクション タイムアウト。

コネクションがタイムアウトになると警告メッセージが記録されます。

この値はミリ秒単位です。

plugin.com.atlassian.stash.plugin.hook.changesetsLimit
500

Limit of maximum count of changesets that will be sent in the POST data for a single ref change.

plugin.com.atlassian.stash.plugin.hook.changesLimit
100

POST データ内の単一のチェンジセットに対する変更数の上限。

Paging

These properties control the maximum number of objects which may be returned on a page, regardless of how many were actually requested by the user. For example, if a user requests Integer.MAX_INT branches on a page, their request will be limited to the value set for page.max.branches.

This is intended as a safeguard to prevent enormous requests from tying up the server for extended periods of time and then generating responses whose payload is prohibitively large. The defaults configured here represent a sane baseline, but may be overridden by customers if necessary.

既定値説明
page.max.branches
1000

1 ページあたりの最大ブランチ数

page.max.changes
1000

Maximum number of changes per page. Unlike other page limits, this is a hard limit; subsequent pages cannot be requested when the number of changes in a commit exceeds this size.

page.max.commits
100

Maximum number of commits per page.

page.max.diff.lines
10000

Maximum number of segment lines (of any type, total) which may be returned for a single diff. Unlike other page limits, this is a hard limit; subsequent pages cannot be requested when a diff exceeds this size.

page.max.directory.children
1000

指定のディレクトリに返される可能性があるディレクトリ エントリの最大数。

page.max.directory.recursive.children
100000

Maximum number of file entries which may be returned for a recursive listing of a directory. A relatively high number as this is used by the file finder which needs to load the tree of files upfront.

page.max.groups
1000

Maximum number of groups per page.

page.max.granted.permissions
1000

Maximum number of granted permissions per page.

page.max.hookscripts
100

Maximum number of hook scripts per page.

page.max.index.results
50

Maximum number of commits which may be returned from the index when querying by an indexed attribute. For example, this limits the number of commits which may be returned when looking up commits against a Jira issue.

page.max.projects
1000

Maximum number of projects per page.

page.max.pullrequest.activities
500

Maximum number of pull request activities per page.

page.max.pullrequests
100

Maximum number of pull requests per page.

page.max.repositories
1000

Maximum number of repositories per page.

page.max.source.length
5000

Maximum length for any line returned from a given file when viewing source. This value truncates long lines. There is no mechanism for retrieving the truncated part short of downloading the entire file.

page.max.source.lines
${display.max.source.lines}

Maximum number of lines which may be returned from a given file when viewing source. This value breaks large files into multiple pages. This property relates to display.max.source.line in that up to (display.max.source.lines/page.max.source.lines) requests will be made to view the page.

page.max.tags
1000

Maximum number of tags per page.

page.max.users
1000

1 ページあたりの最大ユーザー数

page.scan.pullrequest.activity.size
500

The page size to use when searching activities to find a specific one.

page.scan.pullrequest.activity.count
4

The number of pages of activities to scan, when searching for a given activity, before giving up.

パスワードのリセット

既定値説明
password.reset.validity.period
4320

Controls how long a password reset token remains valid for. Default period is 72 hours.

この値は分単位です。

Process execution

Controls timeouts for external processes, such as git.

既定値説明
process.timeout.execution
120

Configures a hard upper limit on how long the command is allowed to run even if it is producing output.

This value is in seconds. Using 0, or a negative value, disables the timeout completely.

process.timeout.idle
60

The idle timeout configures how long the command is allowed to run without producing any output.

This value is in seconds. Using 0, or a negative value, disables the timeout completely.

process.windows.autoescapequotes
true

Configures whether or not to escape quotes for commands on Windows

プロファイリング

既定値説明
atlassian.profile.mintime
1

Controls the threshold time below which a profiled section should not be reported.

この値はミリ秒単位です。

atlassian.profile.mintotaltime
0

Controls the threshold time below which a profiled request should not be reported.

この値はミリ秒単位です。

Pull Request - Suggestions

既定値説明
pullrequest.suggestions.drift.timeout
30

Defines the maximum amount of time SCM commands used to drift suggestions back to the source branch are allowed to execute before they are terminated. In most cases a user will be waiting whilst this happens, so we need to balance between applying the suggestion and user experience. If this timeout is exceeded, the user is advised to apply the suggestion manually.

この値は秒単位です。

Pull Request Commit Indexing

Controls how commits are associated with pull requests.

既定値説明
pullrequest.commit.indexing.maximum.commits
1000

Defines the maximum number of commits that will be associated with a pull request when a pull request is created or when new commits are pushed to a pull request. A larger number will impact pull request creation and rescoping time. Pull requests that have more than this number of commits may not appear linked in the commit screen.

pullrequest.commit.indexing.backfill.maximum.processed
5000

Defines the maximum number of pull requests to process at once while backfilling pull request commits. A lower limit will mean less data needs to be stored in memory at once, but processing will take longer as a result.

pullrequest.commit.indexing.backfill.batch.size
250

Defines the maximum number of pull request commit relationships to commit to the database in a single transaction.

pullrequest.commit.indexing.backfill.process.timeout
600

Defines the maximum amount of time SCM commands used to backfill pull request commits are allowed to execute before they are terminated.

この値は秒単位です。

プル リクエスト

既定値説明
pullrequest.bulk.rescope.timeout
300

Defines the maximum amount of time any command used to analyse the effects of ref changes to open pull requests (rescoping) is allowed to execute. For these commands, the standard idle timeout for processes applies.

この値は秒単位です。

pullrequest.deletion.role
AUTHOR

Determines which users can delete pull requests. Valid values are: - AUTHOR pull request authors and repository admins can delete pull requests - REPO_ADMIN repository admins can delete pull requests

pullrequest.diff.context
10

Defines the number of context lines to include around diff segments in pull request diffs. By default, git only includes 3 lines. The default is 10, to try and include a bit more useful context around changes, until the ability to "expand" the context is implemented.

pullrequest.merge.timeout
300

プル リクエストのマージに使用する任意のコマンドの最大実行時間または最大アイドル時間を定義します。プル リクエストのマージには SCM レベルで一連のさまざまなコマンドを使用する必要がある可能性があるため、このタイムアウトは全体のマージ所要時間の上限は定義せずに、それぞれのコマンドに割り当てられる所要時間のみを定義します。

この値は秒単位です。

pullrequest.rescope.commits.display
5

Defines the maximum number of commits per type (either added or removed) to display in a rescope activity.

pullrequest.rescope.commits.max
1000

Defines the absolute maximum number of commits that will be evaluated when attempting to determine, for a given rescope activity, which commits were added to or removed from a pull request. Adjusting this setting can have significant memory footprint impact on the system. It is not recommended to be changed, but the option is provided here to support unique use cases.

pullrequest.rescope.cleanup.interval
30

Controls how frequently empty rescope activities are cleaned up. Because pull requests rescope very frequently it is important to remove empty rescopes from the database to keep activity queries performant.

この値は分単位です。

pullrequest.rescope.detail.threads
2

Defines the maximum number of threads to use for precalculating rescope details. These threads perform the requisite processing to determine the commits added and removed when a pull request is rescoped, where most rescopes do not add or remove any commits. Such "dead" rescopes are deleted during processing. The primary goal is to ensure all details have already been calculated when users try to view a pull request's overview.

pullrequest.rescope.drift.commandtimeout
180

Defines the maximum amount of time SCM commands used to perform comment drift are allowed to execute before they are terminated. Aggressive timeouts should not be used here. Commands which timeout may result in comments which are still present in the diff being orphaned or drifted incorrectly.

この値は秒単位です。

pullrequest.rescope.drift.maxattempts
5

Controls how many times comment drift will be retried when it fails. Certain failure types are considered to be unrecoverable and will not be retried regardless of this setting. Unrecoverable failures are logged.

pullrequest.rescope.drift.threads
4

Defines the maximum number of threads to use when processing comment drift for a pull request during rescope. Higher numbers here do not necessarily mean higher throughput! Performing comment drift will usually force a new merge to be created, which can be very I/O intensive. Having a substantial number of merges running at the same time can significantly reduce the speed of performing comment drift.

pullrequest.rescope.threads
1

Defines the maximum number of threads to use for rescoping pull requests.

Ref Restrictions (Branch permissions)

既定値説明
plugin.bitbucket-ref-restriction.case.insensitive
true

Controls whether refs are matched case insensitively for ref restrictions.

plugin.ref-restriction.feature.ascii.art
true

Controls whether ASCII art is displayed when a push is rejected.

plugin.ref-restriction.feature.splash
true

Controls whether new users are shown a splash page when first viewing ref restrictions.

plugin.bitbucket-ref-restriction.max.resources
100

The maximum number of ref restrictions per repository. This count refers to each permission item, not each branch. High numbers of branch permissions will adversely impact the speed of pushes to the repository, so increasing this limit is not recommended.

plugin.bitbucket-ref-restriction.max.resource.entities
50

The maximum number of access grants per ref restriction.

Ref metadata

既定値説明
ref.metadata.timeout
2

Controls timeouts for retrieving metadata associated with a collection of refs from all metadata providers collectively.

This values is in seconds.

ref.metadata.max.request.count
100

Maximum number of refs that can be used in a metadata query.

リポジトリのショートカット

既定値説明
plugin.repository.shortcut.url.scheme.extended.whitelist

The extended whitelist for allowed URL schemes. The URL for a repository shortcut must begin with one of the schemes in the default whitelist or a scheme in this property. Schemes should be comma separated, e.g. 'scheme1:,scheme2:'.

Resource Throttling

These properties define concurrent task limits for the ThrottleService, limiting the number of concurrent operations of a given type that may be run at once. This is intended to help prevent overwhelming the server hardware with running processes. Two settings are used to control the number of processes that are allowed to process in parallel: one for the web UI and one for 'hosting' operations (pushing and pulling commits, cloning repositories).

When the limit is reached for the given resource, the request will wait until a currently running request has completed. If no request completes within a configurable timeout, the request will be rejected.

When requests to the UI are rejected, users will see either a 501 error page indicating the server is under load, or a popup indicating part of the current page failed to load.

When SCM hosting commands (pull/push/clone) are rejected, it is messaged in multiple ways:

  • An error message is returned to the client, which the user will see on the command line: "Bitbucket is currently under heavy load and is not able to service your request. Please wait briefly and try your request again"

  • A warning message is logged for every time a request is rejected due to the resource limits, using the following format: "A [scm-hosting] ticket could not be acquired (12/12)"

  • For five minutes after a request is rejected, a red banner will be displayed in the UI to warn that the server is reaching resource limits.

The underlying machine-level limits these are intended to prevent hitting are very OS- and hardware-dependent, so you may need to tune them for your instance. When hyperthreading is enabled for the server's CPUs, for example, it is likely that the default settings will allow sufficient concurrent operations to saturate the I/O on the machine. In such cases, we recommend starting off with a less aggressive default on multi-cored machines; the value can be increased later if hosting operations begin to back up.

Additional resource types may be configured by defining a key with the format throttle.resource.&lt;resource-name&gt;. When adding new types, it is strongly recommended to configure their ticket counts explicitly using this approach.

既定値説明
scaling.concurrency
cpu

Allows adjusting the scaling factor used. Various other CPU/throttling dependent properties are defined in terms of this setting, so adjusting this value implicitly adjusts those. Some examples:

  • event.dispatcher.core.threads

  • event.dispatcher.max.threads

  • executor.max.threads

  • throttle.resource.scm-hosting

The default value, cpu, resolves to the number of detected CPU cores. On hyperthreaded machines, this will be double the amount of physical cores.

throttle.resource.git-lfs
80

Limits the number of Git LFS file transfer operations which may be running concurrently. This is primarily intended to prevent Git LFS requests from consuming all available connections thereby degrading UI and Git hosting operation. This should be a fraction of the maximum number of concurrent connections permitted by Tomcat.

throttle.resource.git-lfs.timeout
0

Controls how long threads will wait for Git LFS uploads/downloads to complete when the system is already running the maximum number of concurrent transfers. It is recommended this be set to zero (i.e. don't block) or a few seconds at most. Since waiters still hold a connection, a non-zero wait time defeats the purpose of this throttle.

この値は秒単位です。

throttle.resource.mirror-hosting
2*${scaling.concurrency}

Limits the number of SCM hosting operations served to mirrors, which may be running concurrently. This limit is intended to protect the system's CPU and memory from being consumed excessively by mirror operations.

Note that dynamic throttling is not supported for mirror hosting operations.

throttle.resource.mirror-hosting.timeout
3600

Controls how long threads will wait for SCM mirrors hosting operations to complete when the system is already running the maximum number of SCM commands.

この値は秒単位です。

throttle.resource.scm-command
25

Limits the number of SCM commands, such as: git diff, git blame, or git rev-list, which may be running concurrently. This limit is intended to prevent the operations which support the UI from preventing push/pull operations from being run.

throttle.resource.scm-command.timeout
2

Controls how long threads will wait for SCM commands to complete when the system is already running the maximum number of SCM commands.

この値は秒単位です。

throttle.resource.scm-hosting.timeout
300

Controls how long threads will wait for SCM hosting operations to complete when the system is already running the maximum number of SCM hosting operations.

この値は秒単位です。

throttle.resource.scm-hosting.strategy
adaptive

SCM ホスティング運用を抑制するための戦略を指定します。指定可能な値は "adaptive" および "fixed" です。

If 'fixed' is specified, throttle.resource.scm-hosting.fixed.limit is used as the fixed upper limit on the number of concurrent hosting operations.

If 'adaptive' is specified, the maximum number of hosting operations will vary between throttle.resource.scm-hosting.adaptive.min and throttle.resource.scm-hosting.adaptive.max based on how many hosting operations the system believes the machine can support in its current state and given past performance.

If any configured adaptive throttling setting is invalid and reverts to a default but this conflicts with other correctly configured or default settings, the throttling strategy will revert to 'fixed'. E.g. this will occur if throttle.resource.scm-hosting.adaptive.min is set to the same value as throttle.resource.scm-hosting.adaptive.max

throttle.resource.scm-hosting.adaptive.limit.min
1*${scaling.concurrency}

When the adaptive strategy is enabled for throttling SCM hosting operations, this sets the lower limit on the number of SCM hosting operations, meaning pushes and pulls over HTTP or SSH, which may be running concurrently.

Setting a lower limit provides a way to specify a minimum service level for SCM hosting operations regardless of what the adaptive throttling heuristic believes the machine can handle.

There is limited support for mathematical expressions; +,-,*,/ and () are supported.

throttle.resource.scm-hosting.adaptive.limit.max
4*${scaling.concurrency}

When the adaptive strategy is enabled for throttling SCM hosting operations, this sets the upper limit on the number of SCM hosting operations, meaning pushes and pulls over HTTP or SSH, which may be running concurrently. This is intended primarily to prevent pulls, which can be very memory-intensive, from exhausting a server's resources. Note that if the machine does not have sufficient memory to support this default value or an explicitly configured value, a smaller value will be chosen on startup.

Adaptive throttling will vary the total tickets There is limited support for mathematical expressions; +,-,*,/ and () are supported.

throttle.resource.scm-hosting.adaptive.cpu.target
0.75

When the adaptive strategy is enabled for throttling SCM hosting operations, this sets the target CPU utilisation for the machine (across all processors) which the system takes into consideration when calculating the current throttling limit.

This value represents a trade-off: higher numbers may boost raw throughput of hosting operations, but at the expense of overall system responsiveness for all users. Increasing the target too high or too low brings diminishing returns.

This must be a value between 0.0 and 1.0 and is a percentage of the total available CPU power across all cores

throttle.resource.scm-hosting.fixed.limit
1.5*${scaling.concurrency}

When the fixed strategy is enabled for throttling SCM hosting operations, this limits the number of SCM hosting operations, meaning pushes and pulls over HTTP or SSH, which may be running concurrently. This is intended primarily to prevent pulls, which can be very memory-intensive, from exhausting a server's resources. There is limited support for mathematical expressions; +,-,*,/ and () are supported.

Rest

既定値説明
plugin.rest.raw.content.markup.max.size
${plugin.bitbucket-readme.max.size:5242880}

Controls the maximum allowed file size when downloading a marked-up file through the raw content REST endpoint

This value is in bytes. Default is 5 MiB

SCM - Cache

See Scaling for Continuous Integration performance for more information about configuring the SCM Cache.

Note: The settings controlled by these properties can be configured via REST. The REST configuration takes precedence over the configuration in bitbucket.properties.

既定値説明
plugin.bitbucket-scm-cache.expiry.check.interval
30

Controls how frequently expired cache entries are invalidated and removed from the cache.

この値は秒単位です。

plugin.bitbucket-scm-cache.eviction.hysteresis
1073741824

When eviction is triggered the amount of disk space requested for eviction is calculated as (eviction.hysteresis + eviction.trigger.free.space - free space under <Bitbucket home directory>/caches)

この値はバイト単位です。

plugin.bitbucket-scm-cache.eviction.trigger.free.space
6442450944

Controls the threshold at which eviction is triggered in terms of free space available on disk (specifically under <Bitbucket home directory>/caches)

この値はバイト単位です。

plugin.bitbucket-scm-cache.minimum.free.space
5368709120

Controls how much space needs to be available on disk (specifically under <Bitbucket home directory>/caches) for caching to be enabled. This setting ensures that the cache plugin does not fill up the disk.

この値はバイト単位です。

plugin.bitbucket-scm-cache.protocols
HTTP,SSH

Controls which protocols caching is applied to. The HTTP value includes both http and https.

This property value is a comma-separated list. Valid values are: HTTP and SSH.

plugin.bitbucket-scm-cache.capabilities.enabled
true

Controls whether git v2 capabilities advertisement is cached.

plugin.bitbucket-scm-cache.capabilities.maxCount
1

The maximum number of git v2 capabilities advertisement to retain per repository. If there are more than this configured limit, the least recently accessed entry will be invalidated.

plugin.bitbucket-scm-cache.capabilities.ttl
3600

Controls the 'time to live' for git v2 capability advertisement caches.

この値は秒単位です。

plugin.bitbucket-scm-cache.refs.enabled
false

Controls whether ref advertisement operations are cached. The default is false for normal instances and true for mirrors

plugin.bitbucket-scm-cache.refs.maxCount
10

The maximum number of ref advertisement entries to retain per repository. If there are more than this configured limit, the least recently accessed entry will be invalidated.

plugin.bitbucket-scm-cache.refs.ttl
180

Controls the 'time to live' for ref advertisement caches.

この値は秒単位です。

plugin.bitbucket-scm-cache.upload-pack.enabled
true

Controls whether caching is enabled for git-upload-pack (clone operations).

plugin.bitbucket-scm-cache.upload-pack.maxCount
20

The maximum number of upload-pack cache entries to retain per repository. If there are more than this configured limit, the least recently accessed entry will be invalidated.

plugin.bitbucket-scm-cache.upload-pack.ttl
14400

Controls how long the caches for clone operations are kept around when there no changes to the repository.

Caches are automatically invalidated when someone pushes to a repository or when a pull request is merged.

この値は秒単位です。

SCM - Misc

既定値説明
http.cloneurl.includeusername
false

Controls whether the HTTP clone URL should contain the currently authenticated user's username

http.scmrequest.async.enabled
true

Controls whether asynchronous process is enabled for HTTP SCM requests. Asynchronous processing can significantly increase the server's ability to service UI users while under heavy HTTP hosting load

http.scmrequest.async.keepalive
300

Controls how long asynchronous request threads are allowed to idle before they're terminated. Aggressive timeouts may reduce the number of idle threads, but may also reduce the server's ability to respond to load spikes.

この値は秒単位です。

http.scmrequest.async.queue
50

Controls how many HTTP SCM requests can be queued for asynchronous processing before new requests are handled synchronously. Imposing a limit here helps prevent the server from running out of file descriptors due to an excessive number of queued requests, each holding a socket open.

http.scmrequest.async.threads
250

Controls how many threads are used to process HTTP SCM requests asynchronously. Asynchronous processing frees up servlet container threads to allow them to handle other requests, like page requests for UI users.

SCM - git

既定値説明
plugin.bitbucket-git.path.executable
git

Defines the default path to the git executable. On Windows machines, the .exe suffix will be added to the configured value automatically if it is not present. In general, "git" should be an acceptable default for every platform, here, assuming that it will be available in the runtime user's PATH.

With the new path searching performed by DefaultGitBinaryHelper, setting a default value here is unnecessary, as the plugin will quickly discard the value. This is left here purely for documenting how to set an explicit path.

plugin.bitbucket-git.path.libexec

git libexec ディレクトリ (git-core ディレクトリを含む) へのパスを定義します。このパスは git executable にハードコーディングされており、git-http-backend などのプロセスをフォークするために使用されます。この値が設定された場合、それらのプロセスは直接フォークされます。これにより不要なフォーク(git -> git-http-backend) が除去されるため、スケーラビリティが向上する場合があります。

plugin.bitbucket-git.author.name.type
displayname

Defines whether commits created by the system should use the username (jdoe) or the display name (John Doe) to specify the Git author/committer. By default, the display name will be used.

This value can be either displayname or username.

plugin.bitbucket-git.diff.renames
copies

Defines whether copy and/or rename detection should be performed. By default, both rename and copy detection are performed. Only files modified in the same commit are considered as rename or copy origins, to minimize overhead.

The possible settings are:

  • "copy" or "copies"

    Applies --find-copies.

  • "rename" or "renames"

    Applies --find-renames.

  • "off"

    名前の変更 およびコピー検出を無効にします。

When using "copy" or "copies", the value may optionally be suffixed with a "+" to use --find-copies-harder. This setting should be used with caution, as it can be very expensive. It considers every file in the repository, even files not modified in the same commit, as possible origins for copies. When copy and/or rename detection is enabled plugin.bitbucket-git.diff.renames.threshold can be used control the similarity index required for a change to be identified as a copy or rename. This configuration can also be applied at the repository level with plugin.stash-scm-git.diff.renames.KEY.slug or at the project level with plugin.stash-scm-git.diff.renames.KEY

plugin.bitbucket-git.diff.renames.threshold
50

Defines the threshold, as a percentage, for a file to be detected as a rename or a copy. This setting is only applied if copy and/or rename detection is enabled. The default threshold applied is 50% similarity (defined in git itself).

git diff and git diff-tree do not honor 100 (identical files only) for the threshold. They ignore the threshold and apply the default 50% threshold instead. A configured threshold of 100 will be applied as 99. Similarly, a configured threshold that is 0, or negative, will be applied as 1. This configuration can also be applied at the repository level with plugin.stash-scm-git.diff.renames.threshold.KEY.slug or at the project level with plugin.stash-scm-git.diff.renames.threshold.KEY

plugin.bitbucket-git.environment.commandsize
32000

Defines the maximum number of characters that can be added to a single command. Different operating systems (and even different versions of the same operating system) have different hard limitations they apply to command line lengths. This default is intended to be low enough to work on all supported platforms out of the box, but still high enough to be usable. It is configurable in case it proves to be too high on some platform. This default is based on Windows, which has a limit of 32768 characters. Testing on Linux (Ubuntu 12.04 running a 3.2 kernel) found that its limit is at least 32x the limit imposed by Windows.

plugin.bitbucket-git.environment.variablesize
16000

Defines the maximum number of characters that can be added to a single environment variable. Different operating systems (and even different versions of the same operating system) have different hard limitations they apply to environment variables. This default is intended to be low enough to work on all supported platforms out of the box, but still high enough to be usable. It is configurable in case it proves to be too high on some platform.

plugin.bitbucket-git.hosting.http.buffersize
8192

Defines the buffer size in bytes which is used when marshaling data between the git process and the HTTP socket. The default is 8K, with a 1K minimum.

plugin.bitbucket-git.hosting.ssh.buffersize
4096

Defines the buffer size in bytes which is used when marshaling data between the git process and the SSH socket. The default is 4K, with a 1K minimum.

plugin.bitbucket-git.hosting.timeout.execution
86400

Defines the execution timeout for push/pull processes, applying a hard limit to how long the operation is allowed to run even if it is producing output or reading input. The default value is 1 day, with a 5 minute minimum.

この値は秒単位です。

plugin.bitbucket-git.hosting.timeout.idle
1800

Defines the idle timeout for push/pull processes, applying a limit to how long the operation is allowed to execute without either producing output or consuming input. The default value is 30 minutes, with a 2 minute minimum.

この値は秒単位です。

plugin.bitbucket-git.pullrequest.merge.auto.forceadd
false

Defines whether conflicted files should be added to the index using git add --force, during automatic merges. By default, this behaviour is off--simple git add is "safer". However, when merging across branches with discrepant .gitignore settings, enabling this setting may allow the system to create a conflicted diff (where without it a diff to the common ancestor will be shown instead).

Note: This value has no effect on real pull request merges. It is only applied during automatic merges, for producing a pull request's change tree and diff.

plugin.bitbucket-git.pullrequest.merge.auto.timeout
120

Defines the maximum amount of time any command used to perform a merge to support the "merge" diff mode is allowed to execute or idle. Because the commands used generally do not produce output, there is no separate idle timeout.

この値は秒単位です。

plugin.bitbucket-git.ssh.binary
ssh

Defines the SSH binary to use for outgoing SSH commands, i.e. git commands that fetch from or push to external repositories over SSH. This setting does not affect incoming SSH requests.

SMTP

既定値説明
mail.timeout.connect
60

Controls the timeout for establishing an SMTP connection.

この値は秒単位です。

mail.timeout.send
60

Controls the timeout for sending an e-mail.

この値は秒単位です。

mail.test.timeout.connect
30

Controls the timeout for establishing a test SMTP connection. Shorter timeouts should be applied for when sending test e-mails, as the test occurs in user time.

この値は秒単位です。

mail.test.timeout.send
30

Controls the timeout for sending a test e-mail. Shorter timeouts should be applied for when sending test e-mails, as the test occurs in user time.

この値は秒単位です。

mail.error.pause.log
300

Controls how frequently messages will go to the standard log file about mail sending errors. All errors are logged to atlassian-bitbucket-mail.log, but warnings will be added to the standard log periodically if there are errors sending messages.

この値は秒単位です。

mail.error.pause.retry
5

Controls how long to wait before retrying to send a message if an error occurs.

この値は秒単位です。

mail.threads
1

Controls the number of threads to use for sending emails. Higher values may result in higher mail server load, but may also allow the system to work through its internal queue faster.

mail.max.message.size
1048576

Controls the maximum allowed size of a single mail message in bytes, which is the sum of the subject and body sizes.

この値はバイト単位です。

mail.max.queue.size
157286400

メール キューの最大許容サイズをバイト単位で制御します (メール キューがそのサイズに達した場合、新しいメッセージはすべて拒否されます)。

この値はバイト単位です。

mail.crypto.protocols
SSLv2Hello TLSv1 TLSv1.1 TLSv1.2

Space-separated list of crypto protocols to use when sending encrypted email. This default value is POODLE-safe. Order does not matter - JavaMail always tries the latest supported protocol first. An empty value causes the product to use all protocols supported by the shipped version of JavaMail which may not be be POODLE-safe

mail.crypto.ciphers

Space-separated list of ciphers to use when connecting via SSL or TLS. An empty value causes the product to use all ciphers supported by the JVM

ssh

既定値説明
plugin.ssh.port

Sets the port where the application will listen for SSH connections, 7999 by default. This value and the SSH base URL's(plugin.ssh.baseurl) port don't need to match, but they often should match.

plugin.ssh.baseurl

Sets the URL on which SSH is accessible, this is used as the base for SSH clone URLs. If SSH is running on a nonstandard port, the base URL must start with ssh:// or clones will fail because Git won't understand the port correctly.

SSH command execution

既定値説明
plugin.ssh.command.timeout.idle
7200

Controls timeouts for all SSH commands, such as those that service git and hg operations over SSH. The idle timeout configures how long the command is allowed to run without writing any output to the client. For SCM commands, the plugin.*.hosting.timeout.idle properties defined above will be applied to the underlying process. The default value is 2 hours.

This values is in seconds.

plugin.ssh.nio.workers
9

Controls the maximum number of NIO worker threads to process incoming SSH commands. Apache MINA uses a default of 9, which is also the default here.

plugin.ssh.auth.timeout
30

Controls the timeout when trying to authenticate the incoming SSH command. If authentication does not complete within this period the SSH command will fail. Using a shorter timeout hastens the rejection SSH commands under heavy load and can help keep open socket/file count down.

This values is in seconds.

plugin.ssh.session.pending-writes.max
3840

Controls the number of pending writes the throttling mechanism will allow SSH sessions. Throttling works as a flow control mechanism to prevent the system from writing too much data to Apache MINA's WriteRequestQueue. This is particularly helpful when clients (such as TortoiseGit) setup session channels with extremely large window sizes (2GBs) which means Apache MINA's own flow control mechanism will not stop the command from writing data.

A default value of 512 means that at any given time the system will only be responsible for, at most, 4 MBs per session (some more data may be written to the queue as part of Apache MINA's own handling of the SSH protocol).

Rate limiting will be applied to any SSH session which establishes a channel with a remote window size larger than ${plugin.ssh.session.pending-writes.max} * 8197 (packet size optimized for Git).

A value of 0 or less effectively disables session io rate limiting.

plugin.ssh.session.max
250

Controls the maximum number of concurrent SSH sessions allowed. If this property is removed the system will set the limit at 250. If this property is configured below 100 the system will set the limit at 100. Increasing this will result in additional memory usage during peak load and can lead to out-of-memory errors.

SSH security

既定値説明
plugin.ssh.disabled.ciphers
arcfour128, arcfour256, aes128-cbc, aes192-cbc, aes256-cbc, 3des-cbc, blowfish-cbc

Controls which default ciphers are disabled when executing all SSH commands. Non existent ciphers are ignored. Names are case sensitive. If you override this property, the default values will NOT be appended, and should be included explicitly.

Example value: arcfour128,3des-cbc

To enable additional ciphers see the KB article Disable default SSH algorithms.

plugin.ssh.disabled.key.exchanges

Controls which default key exchange algorithms are disabled when executing all SSH commands. Non existent key exchange algorithms are ignored. Names are case sensitive. If you override this property, the default values will NOT be appended, and should be included explicitly.

Example value: ecdh-sha2-nistp256,ecdh-sha2-nistp384

追加のキー交換アルゴリズムを有効にするには、ナレッジベース記事「既定の SSH アルゴリズムを無効化する」を参照してください。

plugin.ssh.disabled.macs
hmac-md5, hmac-sha1-96, hmac-md5-96

Controls which default macs are disabled when executing all SSH commands. Non existent macs are ignored. Names are case sensitive. If you override this property, the default values will NOT be appended, and should be included explicitly.

Example value: hmac-sha1-96,hmac-md5-96,hmac-md5

To enable additional macs see the KB article Disable default SSH algorithms.

検索

既定値説明
plugin.search.codesearch.indexing.enabled
true

Controls whether code indexing is enabled. Setting this to false prevents repository content from being indexed going forward. Existing repository content will not be un-indexed automatically.

plugin.search.codesearch.indexing.exclude

Allows configuring strategies for excluding certain repositories from code search indexing. This can be used to reduce disk space requirements for the Elasticsearch index.

有効な値は以下のとおりです。

  • all-forks excludes all forks from code search indexing

  • personal-forks excludes personal forks from code search indexing

  • synced-forks excludes forks which have ref synchronization enabled from code search indexing

  • undiverged-forks excludes forks from code search indexing which have ref synchronization enabled, and have not had their default branch updated

plugin.search.pageSize.primary
25

Controls the page size of primary search results (eg. code for code search)

plugin.search.pageSize.secondary
10

Controls the page size of secondary search results (eg. sidebar PRs/repos/etc)

サーバー

既定値説明
server.context-path
/

Controls the context path where the application should be published, / by default.

server.display-name
Atlassian Bitbucket

Controls the application's display name.

server.session.cookie.http-only
true

Controls whether the session cookie should include an HttpOnly restriction, for those browsers that honor it. HttpOnly is enabled by default.

server.session.cookie.name
BITBUCKETSESSIONID

Controls the name used for the session cookie, which is "BITBUCKETSESSIONID" by default. Note that most servlet containers use "JSESSIONID" by default. That is not used here to facilitate installations where multiple applications have the same hostname (typically via reverse proxying) with distinct context paths. In such a setup, using "JSESSIONID" can result in unexpected behavior where logging into one application logs users out of others.

server.session.timeout
1800

Controls the session's timeout, which defaults to 30 minutes. Session timeout may not result in a user having to login again; they may automatically receive a new session via a separate remember-me token.

この値は秒単位です。

server.session.tracking-modes
cookie

Controls which mechanisms may be used for tracking sessions. By default, only "cookie" tracking is enabled. Other options are "ssl", to use the SSL session ID, and "url", to append the session ID to the URL after a semi-colon. Multiple values may be specified separated by commas (e.g. "cookie,url")

Server Connectors

These properties control the primary server connector. Additional connectors can be configured using the prefix server.additional-connector.#, where # is the connector number. For example: to set a port on the first additional connector, the property would be server.additional-connector.1.port=7991. Numbers 1 to 5 are supported, allowing for 5 connectors in addition to the primary connector.

既定値説明
server.address

Controls the network address the application will bind to, 0.0.0.0 by default.

server.compression.enabled
true

Controls whether the server will attempt to compress data to reduce network costs. By default, compression is enabled on all HTTP/1.1 connectors.

Note: Compression cannot be used when server.connector-protocol is set to AJP/1.3, and it will be ignored if enabled.

server.compression.excluded-user-agents

Controls the list of user-agents to exclude from compression.

server.compression.mime-types
text/css,text/html,text/javascript,text/json,text/plain,text/xml,text/x-javascript,\

Controls which MIME types are compressed, when compression is enabled. CSS, HTML, JavaScript and JSON are compressed by default.

server.compression.min-response-size

Controls the minimum response length for the compression to be performed. Only the mime-types specified as part of the server.compression.mime-types will be compressed.

この値はバイト単位です。

server.connection-timeout
20000

Controls the connection timeout, which defines how long the server will wait for a request after a connection is established.

この値はミリ秒単位です。

server.connector-protocol
HTTP/1.1

Controls the wire protocol used by the primary connector, which is HTTP/1.1 by default.

The following values are supported: * HTTP/1.1 or org.apache.coyote.http11.Http11NioProtocol (Default): A standard HTTP 1.1 connector, which can be configured with or without SSL. All of the various settings are supported for HTTP 1.1. * AJP/1.3 or org.apache.coyote.ajp.AjpNioProtocol: An AJP connector. Several settings, such as max-http-header-size and all of the compression and SSL settings, are not honored when using AJP.

Apache Portable Runtime (APR) and NIO2-based connectors are not supported and may not be used. Attempting to configure either type will result in the system failing during startup.

server.max-http-header-size
0

Controls the maximum size of the HTTP message header. When using the default value (0), Tomcat's default limit is applied.

Note: The max HTTP header size cannot be configured when server.connector-protocol is set to AJP/1.3, and it will be ignored if set.

この値はバイト単位です。

server.max-http-post-size
0

Maximum size of the HTTP post or put content. When using the default value (0), Tomcat's default limit is honored.

この値はバイト単位です。

server.port
7990

Controls the port where the application will listen for connections, 7990 by default.

server.proxy-name

The proxy name, used to construct proper redirect URLs when a reverse proxy is in use.

server.proxy-port

The proxy port, used to construct proper redirect URLs when a reverse proxy is in use. If a proxy port is not set, but a name is, the connector's port will be used as the default.

server.redirect-port

The redirect port to use when redirecting from non-SSL to SSL. Defaults to 443, the standard SSL port.

server.require-ssl
false

Require an SSL connection when connecting to the server. Setting this to "true" will automatically redirect insecure connections to the configured "redirect-port" for their connectors.

server.scheme
http

The connector scheme, either "http" or "https". Defaults to "http" unless "secure" is set to "true"; then it defaults to "https". In general, this property should not need to be set.

Note: The scheme cannot be configured when server.connector-protocol is set to AJP/1.3, and it will be ignored if set.

server.secure
false

Whether the connector is secured. Note that setting this to "true" does not enable SSL; SSL is enabled using server.ssl.enabled instead. One use case for setting this to "true" is when the system is behind a reverse proxy and SSL is terminated at the proxy.

Note: The secure flag cannot be configured when server.connector-protocol is set to AJP/1.3, and it will be ignored if set.

server.server-header

Controls the value to use for the Server response header.

If empty, which is the default, no header is sent.

server.ssl.ciphers

Controls the supported SSL ciphers for the connector.

This property value is a comma-separated list.

server.ssl.client-auth

Controls whether the client authentication is wanted ("want") or needed ("need"), this setting directly relates to the clientAuth option for Tomcat. Requires a configured trust store.

Default is empty, which corresponds to the Tomcat's default value of false.

server.ssl.enabled
false

Controls whether SSL is enabled. By default, SSL is disabled and the primary connector uses unsecured HTTP.

Note: SSL cannot be used when the server.connector-protocol is set to AJP/1.3, and attempting to enable it will prevent the server from starting.

server.ssl.key-alias
tomcat

Controls the alias used when selecting the key to use in the keystore. For compatibility with keys setup for Bitbucket Server 4.x and earlier, the default is "tomcat".

server.ssl.key-password
changeit

Controls the password used to access the key within the keystore. (server.ssl.key-store-password is used to control the password for accessing the keystore itself.) For compatibility with keys setup for Bitbucket Server 4.x and earlier, the default is "changeit".

server.ssl.key-store
${bitbucket.shared.home}/config/ssl-keystore

Controls the location of the keystore, "$BITBUCKET_HOME/shared/config/ssl-keystore" by default.

server.ssl.key-store-password
changeit

Controls the password used to access the keystore. (server.ssl.key-password is used to control the password for accessing the specific key within the keystore.) For compatibility with keys setup for Bitbucket Server 4.x and earlier, the default is "changeit".

server.ssl.key-store-type
${keystore.type:jks}

Controls the keystore type. The JVM's default keystore type as returned by KeyStore.getDefaultType(), typically "jks", is used by default.

server.ssl.enabled-protocols
TLS

Controls the SSL protocol to use for the connector.

server.ssl.trust-store

Controls which trust store holds the SSL certificates

server.ssl.trust-store-password

Controls the password to be used to access the trust store.

server.ssl.trust-store-provider

Controls the provider for the trust store.

server.ssl.trust-store-type

Controls the type for the trust store.

サーバーのビジー バナー

既定値説明
server.busy.on.ticket.rejected.within
5

Controls how long a warning banner is displayed in the UI after a request is rejected due to excessive load.

This value is in minutes. Using 0, or a negative value, disables displaying the banner.

server.busy.on.queue.time
60

リクエストがキューに含まれる場合の最大時間を制御します。この時間を超えると警告バナーが表示されます。

This value is in seconds. Using 0, or a negative value, disables displaying the banner.

Setup automation

If these properties are specified in bitbucket.properties, when the Setup Wizard runs after installing Bitbucket Server their values will be used and the Setup Wizard will not display the corresponding configuration screens.

You can use these properties to automate setup and remove the need to interact with the Setup Wizard when provisioning a new server.

See our automated setup documentation for more details.

既定値説明
setup.displayName
Bitbucket

The display name for the instance.

setup.baseUrl

The base URL for the instance.

setup.license
AAABa1evaA4N...

The license.

setup.sysadmin.username
admin

The username for the system admin account.

setup.sysadmin.password
password

The password for the system admin account.

setup.sysadmin.displayName
John Doe

システム管理アカウントの表示名。

setup.sysadmin.emailAddress
sysadmin@yourcompany.com

システム管理アカウントのメール アドレス。

シンタックス ハイライト

See Configuring syntax highlighting for file extensions for more information.

既定値説明
syntax.highlighter.<MIME type>.executables
exe1,exe2

Controls the language highlighter used for a given set of hashbang executables.

The &lt;MIME type&gt; refers to the MIME type CodeMirror uses.

syntax.highlighter.<MIME type>.extensions
ext1,ext2

Controls the language highlighter used for a given set of file extensions.

The &lt;MIME type&gt; refers to the MIME type CodeMirror uses.

syntax.highlighter.text/x-sh.executables
sh,bash,zsh
syntax.highlighter.text/x-erlang.executables
escript
syntax.highlighter.text/javascript.executables
node
syntax.highlighter.text/x-perl.executables
perl
syntax.highlighter.text/x-python.executables
python
syntax.highlighter.text/x-ruby.executables
ruby
syntax.highlighter.text/x-sh.extensions
makefile,Makefile
syntax.highlighter.text/velocity.extensions
vm
syntax.highlighter.text/x-objectivec.extensions
m

タスク

既定値説明
task.max.anchors.per.request
500

Maximum number of anchors that can be used when counting or searching tasks

task.max.contexts.per.request
100

Maximum number of contexts that can be used when counting or searching tasks

task.max.tasks.per.request
500

Maximum number of tasks that can be retrieved when searching tasks

task.query.disjunction.size
100

Sets the maximum size of the disjunction clause when querying tasks by anchors or contexts

トピック

既定値説明
topic.default.message.max.queue
1024

Controls the default size of a topic's message queue. Messages that arrive for the topic when the message queue is full will be dropped (and an error logged). This default will only apply when the topic is created (by a plugin) without specifying the message queue size.

topic.dispatch.core.threads
1

Controls the minimum number of threads to keep alive for dispatching topic messages to topic subscribers

topic.dispatch.max.threads
3

Controls the maximum number of threads to dispatch topic messages to the topic subscribers

Webhook

既定値説明
plugin.webhooks.http.backoff.interval.exponent
1.2

In the event that a webhook is considered unhealthy and is marked for backoff, it will start by backing off at the initial backoff delay. If the webhook continues to fail, it will back off at a rate of

(initial backlog interval) * (backoff exponent ^ number of failures)

up to a configured maximum

plugin.webhooks.http.backoff.interval.initial
10

The initial delay given to a webhook when it fails more than the configured maximum number of times. While in this backoff state, the specific webhook will be skipped

この値は秒単位です。

plugin.webhooks.http.backoff.interval.max
7200

The maximum delay given to a webhook when it continually fails. While in this backoff state, the specific webhook will be skipped

This value is in milliseconds, default 2 hours.

plugin.webhooks.http.ip.blacklist
169.254.169.254

This value controls a banned set of IPs that webhooks cannot connect to. Doing so will cause an exception. By default the AWS metadata endpoint is banned to avoid leaking data about the machine that the application is running on

This value is a comma separated list of IPv4/6 addresses or CIDR ranges.

plugin.webhooks.http.backoff.trigger.count
5

The maximum number of failures in a row before a webhook is considered unhealthy and will be skipped. The time skipped will continue to rise as per the delay exponent until the webhook is healthy once again. A single success will clear all instances of failures from the count.

plugin.webhooks.signature.algorithm
sha256

The algorithm to use for signing the outgoing request body, e.g. sha1 or sha256. The resulting signature will be sent in the X-Hub-Signature header for webhooks that have a secret configured.

plugin.webhooks.connection.timeout
20000

The timeout given for a single webhook request to receive a TCP connection

この値はミリ秒単位です。

plugin.webhooks.socket.timeout
20000

Controls how long requests to external services can continue without producing any data before webhooks gives up.

この値はミリ秒単位です。

plugin.webhooks.dispatch.queue.size
250

The maximum size of the queue used to transform webhook publishing events into HTTP events.

plugin.webhooks.dispatch.queue.timeout
250

The maximum amount of time allowed to be placed on the dispatch queue. This time is only utilised if the dispatch queue is filled. The application will wait this amount of time to attempt to be placed onto the queue.

If unsuccessful, the webhook will be skipped.

この値はミリ秒単位です。

plugin.webhooks.io.threads
3

Number of threads to be used to process HTTP IO.

plugin.webhooks.callback.thread.count
10

Number of threads used to process callbacks to Bitbucket with results of the HTTP requests.

plugin.webhooks.http.connection.max
200

Maximum number of concurrent outgoing connections. Further connections will be placed upon the dispatch queue until they are able to be processed.

plugin.webhooks.http.connection.host.max
5

Maximum number of connections to the same HTTP host.

plugin.webhooks.statistics.flush.interval
30

The interval in seconds at which webhooks statistics are written to the database. A longer interval is more efficient, but results in slightly outdated invocation details in the webhooks administration pages. This value should not be 0

この値は秒単位です。

plugin.webhooks.response.http.body.size.max
16384

Maximum size in bytes for a webhook response body. Any larger bodies will be truncated at this length before being provided to callbacks and/or persisted for historical tracking.

This value is in bytes

plugin.webhooks.dispatch.inflight.max
500

Maximum number of webhooks requests able to be either - Currently in progress - waiting for a HTTP connection any further connection requests will be skipped

Zero downtime backup/disaster recovery

既定値説明
disaster.recovery
false

When set to true repair jobs are triggered on startup

integrity.check.pullRequest.batchSize
1000

Maximum number of results returned in each database call used by integrity checking tasks

integrity.check.pullRequest.updatedSinceDays
7

Controls the date range used to filter merged pull requests for integrity checking. This property defines the number of days to go back since the most recent pull request update

integrity.check.repository.batchSize
1000

Maximum number of results returned in each database call used by repository check tasks



最終更新日 2020 年 6 月 25 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.