CData Sync App は、Bugzilla データをデータベース、データレイク、またはデータウェアハウスに継続的にパイプライン化する簡単な方法を提供し、分析、レポート、AI、および機械学習で簡単に利用できるようにします。
Bugzilla コネクタはCData Sync アプリケーションから使用可能で、Bugzilla からデータを取得して、サポートされている任意の同期先に移動できます。
Sync App アプリケーションの接続 ページに移動し、接続の追加 パネルで対応するアイコンを選択して、Bugzilla への接続を作成します。Bugzilla アイコンが利用できない場合は、Add More アイコンをクリックしてCData サイトからBugzilla コネクタをダウンロードおよびインストールします。
必須プロパティは[設定]タブにリストされています。[Advanced]タブには、通常は必要ない接続プロパティが表示されます。
Bugzilla 開発者UI を使用してBugzilla インスタンスへの接続を確立できます。
You can authenticate to your Bugzilla account using two parameters:
このセクションでは、Bugzilla Sync App の高度な機能を厳選して説明します。
Sync App を使用すると、事前設定されたクエリによって内容が決定されるユーザー定義ビューと呼ばれる仮想テーブルを定義できます。 このビューは、ドライバーに発行されるクエリを直接制御できない場合に有効です。 カスタムビューの作成と設定の概要については、ユーザー定義ビュー を参照してください。
SSL の設定 を使用して、Sync App が証明書のネゴシエーションをどのように扱うかを調整します。さまざまな証明書形式を選択できます。 詳しくは、接続文字列オプションにあるSSLServerCert プロパティを参照してください。
Windows プロキシとHTTP プロキシを含むファイアウォールとプロキシ に合致するようSync App を設定します。トンネル接続を設定することもできます。
Sync App は、Bugzilla にできるだけ多くのSELECT ステートメント処理をオフロードし、残りのクエリをクライアント側のインメモリで処理します。
詳しくはクエリ処理 を参照してください。
CData ログを調整するために使用可能な設定の概要については、ログ を参照してください。基本的なロギングでは、 次の2つの接続プロパティを設定するだけです。LogModules 接続プロパティを使用してログに記録する情報のサブセットを選択できる、 より洗練されたロギングをサポートする多数の機能があります。
デフォルトでは、Sync App はサーバーの証明書をシステムの信頼できる証明書ストアと照合してSSL / TLS のネゴシエーションを試みます。
別の証明書を指定するには、利用可能なフォーマットについてSSLServerCert プロパティを参照してください。
Windows のシステムプロキシ経由の接続では、接続プロパティを追加で設定する必要はありません。他のプロキシに接続するには、ProxyAutoDetect をfalse に設定します。
さらにHTTP プロキシへの認証には、ProxyServer とProxyPort に加えてProxyAuthScheme、ProxyUser、およびProxyPassword を設定します。
次のプロパティを設定します。
CData Sync App はBugzilla オブジェクトをリレーショナルテーブルおよびビューとしてモデル化します。Bugzilla オブジェクトは、テーブル内の他のオブジェクトとリレーションを持ちます。これらのリレーションは外部キーを使用して表されます。
次のセクションでは、利用可能なAPI オブジェクトを示し、Bugzilla API へのSQL の実行について詳しく説明します。
ほとんどのデータベースオブジェクトのスキーマは、シンプルなテキストベースのコンフィギュレーションファイルで定義されます。
Sync App は、Bugzilla API にできるだけ多くのSELECT 構文処理をオフロードし、残りのクエリをインメモリで処理します。 Sync App がクライアントサイドのインメモリ処理でAPI 制限を回避する方法の詳細については、SupportEnhancedSQL を参照してください。
ビューは、カラムと疑似カラムで構成されます。ビューは、データを示すという点でテーブルに似ていますが、ビューでは更新はサポートされません。通常、ビューとして表されるエンティティは、読み取り専用のエンティティです。多くの場合、これらのデータはストアドプロシージャを使用することで更新できます(その機能がデータソースに適用できる場合)。
ビューに対しては、通常のテーブルと同じようにクエリを実行でき、このときに返されるデータも同様です。
ビューとして公開されるクエリなどの動的ビューや、project_team ワークアイテムの特定の組み合わせを検索するためのビューがサポートされています。
Name | Description |
Attachments | Get data about attachments, given a list of bugs and/or attachment IDs. Private attachments will only be returned if you are in the appropriate group or if you are the submitter of the attachment. |
BugCcDetail | Returns details of the CC of a certain Bug.
The 'SELECT * FROM BugCcDetail' query could be slow if you have a lot of Bugs. In that case, use 'IN' filtering for better performance. |
BugFields | Get information about valid bug fields. |
BugHistory | Returns information on the history of the bug you specified.
The 'SELECT * FROM BugHistory' query could be slow if you have a lot of Bugs. In that case, use 'IN' filtering for better performance. |
Bugs | Get information about your bugs. |
Comments | Allows you to get data about comments, given a bug ID or comment ID. |
CommentTags | Get information about the tags currently set for a comment. |
ComponentFlagTypes | Get information about the flag types of a component. |
Flags | Get information on either the flags of an attachment or the flags of a bug. |
Groups | Returns information about Bugzilla groups. |
ProductComponents | Get information on the components of a product.
Querying 'SELECT * FROM ProductComponents' could be slow because it retrieves all ProductIDs and then makes separate calls for each of them to get the ProductComponents. In that case use 'IN' filtering for better performance. |
ProductMilestones | Get information about milestones of a certain product.
Querying 'SELECT * FROM ProductMilestones' could be slow because it retrieves all ProductIDs and then makes separate calls for each of them to get the ProductMilestones. In that case use 'IN' filtering for better performance. |
Products | List the available products and get information about them.
By default this view will retrieve all accessible and selectable products. If you want to get only the products you can enter bugs against, you must use the 'type' filter like this: type='enterable' |
ProductVersions | Allows you to get information about versions of a certain product.
Querying 'SELECT * FROM ProductVersions' could be slow because it retrieves all ProductIDs and then makes separate calls for each of them to get the ProductVersions. In that case use 'IN' filtering for better performance. |
Users | Allows you to get information about user accounts. |
Get data about attachments, given a list of bugs and/or attachment IDs. Private attachments will only be returned if you are in the appropriate group or if you are the submitter of the attachment.
Name | Type | Description |
Id [KEY] | Int | The numeric ID of the attachment. |
FileName | String | The file name of the attachment. |
Data | String | The raw data of the attachment, encoded as Base64. |
Size | Int | The length (in bytes) of the attachment. |
BugId | Int | The numeric ID of the bug that the attachment is attached to. |
Summary | String | A short string describing the attachment. |
CreationTime | Datetime | The time the attachment was created. |
LastChangeTime | Datetime | The last time the attachment was modified. |
ContentType | String | The MIME type of the attachment. |
Creator | String | The login name of the user that created the attachment. |
IsPrivate | Boolean | 'true' if the attachment is private (only visible to a certain group called the |
IsObsolete | Boolean | 'true' if the attachment is obsolete, 'false' otherwise. |
IsPatch | Boolean | 'true' if the attachment is a patch, 'false' otherwise. |
Returns details of the CC of a certain Bug.
The 'SELECT * FROM BugCcDetail' query could be slow if you have a lot of Bugs. In that case, use 'IN' filtering for better performance.
Name | Type | Description |
Id [KEY] | Int | The ID of the cc list member. |
Name | String | The name of the cc list member. |
RealName | String | The 'real' name of the cc list member. |
String | The e-mail of the cc list member. | |
BugId | Int | The Id of the bug you're trying to get the CC details from. |
Get information about valid bug fields.
Name | Type | Description |
Id [KEY] | Int | An integer ID uniquely identifying this field in this installation only. |
Name | String | The internal name of this field. This is a unique identifier for this field. If this is not a custom field, then this name will be the same across all Bugzilla installations. |
DisplayName | String | The name of the field, as it is shown in the user interface. |
Type | Int | The number of the fieldtype. The following values are defined: '0' - Field type unknown, '1' - Single-line string field, '2' - Single value field, '3' - Multiple value field, '4' - Multi-line text value, '5' - Date field with time, '6' - Bug ID field, '7' - See Also field, '8' - Keywords field, '9' - Date field, '10' - Integer field |
IsCustom | Boolean | 'true' when this is a custom field, 'false' otherwise. |
IsMandatory | Boolean | 'true' if the field must have a value when filing new bugs. Also, mandatory fields cannot have their value cleared when updating bugs. |
IsOnBugEntry | Boolean | For custom fields, this is 'true' if the field is shown when you enter a new bug. For standard fields, this is currently always 'false', even if the field shows up when entering a bug. |
VisibilityField | String | The name of a field that controls the visibility of this field in the user interface. This field only appears in the user interface when the named field is equal to one of the values is VisibilityValues. Can be null. |
ValueField | String | The name of the field that controls whether or not particular values of the field are shown in the user interface. Can be null. |
VisibilityValues | String | This field is only shown when visibility_field matches one of these string values. When VisibilityField is null, then this is an empty array. |
Values | String | The legal values for select-type (drop-down and multiple-selection) fields. This is also populated for the Component, Version, TargetMilestone, and Keywords fields, but not for the Product field. |
Returns information on the history of the bug you specified.
The 'SELECT * FROM BugHistory' query could be slow if you have a lot of Bugs. In that case, use 'IN' filtering for better performance.
Name | Type | Description |
Who | String | The login name of the user who performed the bug change. |
When | Datetime | The date the bug activity/change happened. |
FieldName | String | The name of the bug field that has changed. |
Was | String | The previous value of the bug field which has been deleted by the change. |
Became | String | The new value of the bug field which has been added by the change. |
AttachmentId | Int | The ID of the attachment that was changed. This has a value only if the change was to an attachment. |
BugId | Int | The ID of the bug. |
Get information about your bugs.
Name | Type | Description |
Id | Int | The login name of the user who performed the bug change. |
Summary | String | The summary of this bug. |
AssignedTo | String | The login name of the user to whom the bug is assigned. |
Status | String | The current status of the bug. |
AliasAggregate | String | The unique aliases of this bug. |
ActualTime | Double | The total number of hours that this bug has taken so far. If you are not in the time-tracking group, this field will not be included in the return value. |
AssignedToId | Int | The Id of the user to whom the bug is assigned |
AssignedToRealName | String | The 'real' name of the user to whom the bug is assigned. |
Classification | String | The name of the current classification the bug is in. |
Component | String | The name of the component this bug belongs to. |
CreationTime | Datetime | When the bug was created. |
Creator | String | The login name of the person who filed this bug (the reporter). |
CreatorId | Int | The ID of the person who filed this bug (the reporter). |
Deadline | String | The day that this bug is due to be completed, in the format YYYY-MM-DD. |
DuplicateOf | Int | The bug ID of the bug that this bug is a duplicate of. If this bug isn't a duplicate of any bug, this will be null. |
EstimatedTime | Double | The number of hours that it was estimated that this bug would take. If you are not in the time-tracking group, this field will not be included in the return value. |
IsCcAccessible | Boolean | If true, this bug can be accessed by members of the CC list, even if they are not in the groups the bug is restricted to. |
IsConfirmed | Boolean | 'true' if the bug has been confirmed. Usually this means that the bug has at some point been moved out of the 'UNCONFIRMED' status and into another open status. |
IsOpen | Boolean | 'true' true if this bug is open, 'false' if it is closed. |
IsCreatorAccessible | Boolean | If true, this bug can be accessed by the creator of the bug, even if they are not a member of the groups the bug is restricted to. |
LastChangeTime | Datetime | When the bug was last changed. |
CreatorRealName | String | The real name of the person who filed this bug (the reporter). |
CreatorName | String | The name of the person who filed this bug (the reporter). |
CreatorEmail | String | The e-mail of the person who filed this bug (the reporter). |
OperatingSystem | String | The name of the operating system that the bug was filed against. |
Platform | String | The name of the platform (hardware) that the bug was filed against. |
Priority | String | The priority of the bug. |
Product | String | The name of the product this bug is in. |
QAContact | String | The login name of the current QA Contact on the bug. |
RemainingTime | Double | The number of hours of work remaining until work on this bug is complete. If you are not in the time-tracking group, this field will not be included in the return value. |
Resolution | String | The current resolution of the bug, or an empty string if the bug is open. |
Severity | String | The current severity of the bug. |
TargetMilestone | String | The milestone that this bug is supposed to be fixed by, or for closed bugs, the milestone that it was fixed for. |
UpdateToken | String | The token that you would have to pass to the process_bug.cgi page in order to update this bug. This changes every time the bug is updated. This field is not returned to logged-out users. |
URL | String | A URL that demonstrates the problem described in the bug, or is somehow related to the bug report. |
Version | String | The version the bug was reported against. |
Whiteboard | String | The value of the |
BlocksAggregate | String | The IDs of bugs that are |
CCAggregate | String | The login names of users on the CC list of this bug. |
DependsOnAggregate | String | The IDs of bugs that this bug |
KeywordsAggregate | String | Each keyword that is on this bug. |
SeeAlsoAggregate | String | The URLs in the See Also field on the bug. |
Allows you to get data about comments, given a bug ID or comment ID.
Name | Type | Description |
Id [KEY] | Int | The globally unique ID for the comment. |
BugId | Int | The ID of the bug that this comment is on. |
AttachmentId | Int | If the comment was made on an attachment, this will be the ID of that attachment. Otherwise it will be null. |
Text | String | The actual text of the comment. |
Count | Int | The number of the comment local to the bug. The Description is 0, comments start with 1. |
Creator | String | The login name of the comment's author. |
CreationTime | Datetime | The time (in Bugzilla's timezone) that the comment was added. |
IsPrivate | Boolean | 'true' if this comment is private (only visible to a certain group called the |
Get information about the tags currently set for a comment.
Name | Type | Description |
Tag | String | The comment tag that matched the specified query. |
Query | String | The query specified. |
Get information about the flag types of a component.
Name | Type | Description |
Id [KEY] | Int | The ID of the flagtype. |
FlagName | String | The name of the flagtype. |
Description | String | The description of the flagtype. |
CcList | String | The concatenated CC list for the flagtype, as a single string. |
SortKey | Int | The sortkey of the flagtype. |
IsActive | Boolean | Whether the flagtype is active or disabled. Flags being in a disabled flagtype are not deleted. It only prevents you from adding new flags to it. |
IsRequestable | Boolean | Whether you can request for the given flagtype (i.e. whether the '?' flag is available or not). |
IsRequesteeble | Boolean | Whether you can ask someone specifically or not. |
IsMultiplicable | Boolean | Whether you can have more than one flag for the given flagtype in a given bug/attachment. |
GrantGroup | Int | The group ID that is allowed to grant/deny flags of this type. If the item is not included all users are allowed to grant/deny this flagtype. |
RequestGroup | Int | The group ID that is allowed to request the flag if the flag is of the type requestable. If the item is not included all users are allowed request this flagtype. |
ProductName | String | The product that contains the component these flagtypes are in. |
ComponentName | String | The component these flagtypes are in. |
Type | String | Whether this flag type belongs to a 'bug' or an 'attachment' |
Get information on either the flags of an attachment or the flags of a bug.
Name | Type | Description |
Id [KEY] | Int | The ID of the flag. |
Name | String | The name of the flag. |
TypeId | Int | The type ID of the flag. |
Status | String | The current status of the flag. |
Setter | String | The login name of the user who created or last modified the flag. |
CreationDate | Datetime | The timestamp when this flag was originally created. |
ModificationDate | Datetime | The timestamp when the flag was last modified. |
BugId | Int | The ID of the flag. |
AttachmentId | Int | The ID of the flag. |
Returns information about Bugzilla groups.
Name | Type | Description |
Id [KEY] | Int | The unique integer ID that Bugzilla uses to identify this group. Even if the name of the group changes, this ID will stay the same. |
Name | String | The name of the group. |
Description | String | The description of the group. |
IsBugGroup | Int | Whether this group is to be used for bug reports or is only administrative specific. |
UserRegExp | String | A regular expression that allows users to be added to this group if their login matches. |
IsActive | Boolean | Whether this group is currently active or not. |
Membership | Int | Set this to 1 to get the Users of the group. This field holds no information. |
Users | String | User objects that are members of this group; only returned if the user sets the 'Membership' parameter to 1. |
Get information on the components of a product.
Querying 'SELECT * FROM ProductComponents' could be slow because it retrieves all ProductIDs and then makes separate calls for each of them to get the ProductComponents. In that case use 'IN' filtering for better performance.
Name | Type | Description |
Id [KEY] | Int | An integer ID uniquely identifying the component in this installation only. |
Name | String | The name of the component. This is a unique identifier for this component. |
Description | String | A description of the component, which may contain HTML. |
DefaulAssignedTo | String | The login name of the user to whom new bugs will be assigned by default. |
DefaultQAContact | String | The login name of the user who will be set as the QA Contact for new bugs by default. Empty string if the QA contact is not defined. |
SortKey | Int | Components, when displayed in a list, are sorted first by this integer and then secondly by their name. |
IsActive | Boolean | A boolean indicating if the component is active. Inactive components are not enabled for new bugs. |
ProductId | Int | The ID of the product this component belongs to. |
ProductName | String | The name of the product this component belongs to. |
Get information about milestones of a certain product.
Querying 'SELECT * FROM ProductMilestones' could be slow because it retrieves all ProductIDs and then makes separate calls for each of them to get the ProductMilestones. In that case use 'IN' filtering for better performance.
Name | Type | Description |
Id [KEY] | Int | An integer ID uniquely identifying this milestone. |
Name | String | The name of the milestone of the product. |
IsActive | Boolean | A boolean indicating if this milestone of the product is active. |
SortKey | Int | The sorting key of this milestone of the product. |
ProductId | Int | The ID of the product this milestone belongs to. |
ProductName | String | The name of the product this milestone belongs to. |
List the available products and get information about them.
By default this view will retrieve all accessible and selectable products. If you want to get only the products you can enter bugs against, you must use the 'type' filter like this: type='enterable'
Name | Type | Description |
Id [KEY] | Int | An integer ID uniquely identifying the product in this installation only. |
Name [KEY] | String | The name of the product. This is a unique identifier for the product. |
Description | String | A description of the product, which may contain HTML. |
IsActive | Boolean | A boolean indicating if the product is active. |
Classification | String | The classification name for the product. |
DefaultMilestone | String | The name of the default milestone for the product. |
HasUnconfirmed | Boolean | Indicates whether the UNCONFIRMED bug status is available for this product. |
Type | String | Return information about specific type of products such as 'accessible', 'selectable', or 'enterable' |
Allows you to get information about versions of a certain product.
Querying 'SELECT * FROM ProductVersions' could be slow because it retrieves all ProductIDs and then makes separate calls for each of them to get the ProductVersions. In that case use 'IN' filtering for better performance.
Name | Type | Description |
Id [KEY] | Int | An integer ID uniquely identifying the version of this product. |
Name | String | The name of the version of the product. |
IsActive | Boolean | A boolean indicating if this version of the product is active. |
SortKey | Int | The sorting key of this version of the product. |
ProductId | Int | The ID of the product this version belongs to. |
ProductName | String | The name of the product this version belongs to. |
Allows you to get information about user accounts.
Name | Type | Description |
Id [KEY] | Int | The unique integer ID that Bugzilla uses to represent this user. Even if the user's login name changes, this will not change. |
Name | String | The login name of the user. |
RealName | String | The actual name of the user. May be blank. |
String | The email address of the user. | |
CanLogin | Boolean | A boolean value to indicate if the user can login into Bugzilla. |
EmailEnabled | Boolean | A boolean value to indicate if bug-related mail will be sent to the user or not. |
LoginDeniedText | String | A text field that holds the reason for disabling a user from logging into Bugzilla. If empty then the user account is enabled; otherwise it is disabled/closed. |
SavedSearches | String | User's saved searches. |
SavedReports | String | User's saved reports. |
プロパティ | 説明 |
URL | The URL to the Bugzilla server used for logging in. |
APIKey | An ApiKey to authenticate to your account. API keys can be created in the Preferences > API Keys section. |
プロパティ | 説明 |
SSLServerCert | TLS/SSL を使用して接続するときに、サーバーが受け入れ可能な証明書。 |
プロパティ | 説明 |
FirewallType | プロキシベースのファイアウォールで使われるプロトコル。 |
FirewallServer | プロキシベースのファイアウォールの名前もしくはIP アドレス。 |
FirewallPort | プロキシベースのファイアウォールのTCP ポート。 |
FirewallUser | プロキシベースのファイアウォールに認証するために使うユーザー名。 |
FirewallPassword | プロキシベースのファイアウォールへの認証に使われるパスワード。 |
プロパティ | 説明 |
ProxyAutoDetect | これは、システムプロキシ設定を使用するかどうかを示します。これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。 |
ProxyServer | HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。 |
ProxyPort | ProxyServer プロキシが起動しているTCP ポート。 |
ProxyAuthScheme | ProxyServer プロキシへの認証で使われる認証タイプ。 |
ProxyUser | ProxyServer プロキシへの認証に使われるユーザー名。 |
ProxyPassword | ProxyServer プロキシへの認証に使われるパスワード。 |
ProxySSLType | ProxyServer プロキシへの接続時に使用するSSL タイプ。 |
ProxyExceptions | ProxyServer 経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。 |
プロパティ | 説明 |
LogModules | ログファイルに含めるコアモジュール。 |
プロパティ | 説明 |
Location | テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリへのパス。 |
BrowsableSchemas | このプロパティは、使用可能なスキーマのサブセットにレポートされるスキーマを制限します。例えば、BrowsableSchemas=SchemaA,SchemaB,SchemaC です。 |
Tables | このプロパティは、使用可能なテーブルのサブセットにレポートされるテーブルを制限します。例えば、Tables=TableA,TableB,TableC です。 |
Views | 使用可能なテーブルのサブセットにレポートされるビューを制限します。例えば、Views=ViewA,ViewB,ViewC です。 |
プロパティ | 説明 |
IncludeCustomFields | Determines if Custom Fields should be included as table columns or not. |
MaxRows | クエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。 |
Other | これらの隠しプロパティは特定のユースケースでのみ使用されます。 |
Pagesize | Bugzilla から返されるページあたりの結果の最大数。 |
PseudoColumns | このプロパティは、テーブルのカラムとして疑似カラムが含まれているかどうかを示します。 |
RowScanDepth | テーブルで利用可能なカラムを探すためにスキャンする行数の最大値。 |
Timeout | タイムアウトエラーがスローされ、処理をキャンセルするまでの秒数。 |
UserDefinedViews | カスタムビューを含むJSON コンフィギュレーションファイルを指すファイルパス。 |
The URL to the Bugzilla server used for logging in.
The URL to the Bugzilla server used for logging in.
An ApiKey to authenticate to your account. API keys can be created in the Preferences > API Keys section.
ApiKey
このセクションでは、本プロバイダーの接続文字列で設定可能なSSL プロパティの全リストを提供します。
プロパティ | 説明 |
SSLServerCert | TLS/SSL を使用して接続するときに、サーバーが受け入れ可能な証明書。 |
TLS/SSL を使用して接続するときに、サーバーが受け入れ可能な証明書。
TLS/SSL 接続を使用する場合は、このプロパティを使用して、サーバーが受け入れるTLS/SSL 証明書を指定できます。コンピュータによって信頼されていない他の証明書はすべて拒否されます。
このプロパティは、次のフォームを取ります:
説明 | 例 |
フルPEM 証明書(例では省略されています) | -----BEGIN CERTIFICATE----- MIIChTCCAe4CAQAwDQYJKoZIhv......Qw== -----END CERTIFICATE----- |
証明書を保有するローカルファイルへのパス。 | C:\cert.cer |
公開鍵(例では省略されています) | -----BEGIN RSA PUBLIC KEY----- MIGfMA0GCSq......AQAB -----END RSA PUBLIC KEY----- |
MD5 Thumbprint (hex 値はスペースおよびコロン区切り) | ecadbdda5a1529c58a1e9e09828d70e4 |
SHA1 Thumbprint (hex 値はスペースおよびコロン区切り) | 34a929226ae0819f2ec14b4a3d904f801cbb150d |
これを指定しない場合は、マシンが信用するすべての証明書が受け入れられます。
すべての証明書の受け入れを示すには、'*'を使用します。セキュリティ上の理由から、これはお勧めできません。
このセクションでは、本プロバイダーの接続文字列で設定可能なFirewall プロパティの全リストを提供します。
プロパティ | 説明 |
FirewallType | プロキシベースのファイアウォールで使われるプロトコル。 |
FirewallServer | プロキシベースのファイアウォールの名前もしくはIP アドレス。 |
FirewallPort | プロキシベースのファイアウォールのTCP ポート。 |
FirewallUser | プロキシベースのファイアウォールに認証するために使うユーザー名。 |
FirewallPassword | プロキシベースのファイアウォールへの認証に使われるパスワード。 |
プロキシベースのファイアウォールで使われるプロトコル。
このプロパティは、Sync App がFirewallServer プロキシ経由でトンネルトラフィックを使うためのプロトコルを指定します。デフォルトでは、Sync App はシステムプロキシに接続します。この動作を無効化し次のプロキシタイプのどれかで接続するには、ProxyAutoDetect をfalse に設定します。
タイプ | デフォルトポート | 説明 |
TUNNEL | 80 | これが設定されている場合、Sync App はBugzilla への接続を開き、プロキシを経由して通信が行われます。 |
SOCKS4 | 1080 | これが設定されている場合、Sync App はデータをFirewallServer およびFirewallPort で指定されたSOCS 4 プロキシ経由で送信し、接続リクエストが許容されるかどうかを決定します。 |
SOCKS5 | 1080 | これが設定されている場合、Sync App はデータをFirewallServer およびFirewallPort で指定されたSOCS 5 プロキシ経由で送信します。プロキシに認証が必要な場合には、FirewallUser およびFirewallPassword をプロキシが認識する認証情報に設定します。 |
HTTP プロキシへの接続には、ProxyServer およびProxyPort ポートを使ってください。HTTP プロキシへの認証には、ProxyAuthScheme、ProxyUser、およびProxyPassword を使ってください。
プロキシベースのファイアウォールの名前もしくはIP アドレス。
ファイアウォールトラバーサルを許容するために設定するIP アドレス、DNS 名、もしくはプロキシホスト名を指定するプロパティです。プロトコルはFirewallType で指定されます。このプロパティとFirewallServer を使って、SOCKS 経由での接続、もしくはトンネリングが可能です。HTTP プロキシへの接続には、ProxyServer を使用します。
Sync App はデフォルトでシステムプロキシを使うので注意してください。他のプロキシを使う場合には、ProxyAutoDetect をfalse に設定してください。
プロキシベースのファイアウォールのTCP ポート。
ファイアウォールトラバーサルを許容するために設定するプロキシベースのファイアウォールのTCP ポート。名前もしくはIP アドレスを指定するには、FirewallServer を使います。FirewallType でプロトコルを指定します。
プロキシベースのファイアウォールに認証するために使うユーザー名。
FirewallUser およびFirewallPassword プロパティは、FirewallType により指定された認証方式に則り、FirewallServer、およびFirewallPort で指定されたプロキシに対しての認証に使われます。
プロキシベースのファイアウォールへの認証に使われるパスワード。
このプロパティは、FirewallType により指定された認証メソッドに則り、FirewallServer およびFirewallPort で指定されたプロキシに渡されます。
このセクションでは、本プロバイダーの接続文字列で設定可能なProxy プロパティの全リストを提供します。
プロパティ | 説明 |
ProxyAutoDetect | これは、システムプロキシ設定を使用するかどうかを示します。これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。 |
ProxyServer | HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。 |
ProxyPort | ProxyServer プロキシが起動しているTCP ポート。 |
ProxyAuthScheme | ProxyServer プロキシへの認証で使われる認証タイプ。 |
ProxyUser | ProxyServer プロキシへの認証に使われるユーザー名。 |
ProxyPassword | ProxyServer プロキシへの認証に使われるパスワード。 |
ProxySSLType | ProxyServer プロキシへの接続時に使用するSSL タイプ。 |
ProxyExceptions | ProxyServer 経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。 |
これは、システムプロキシ設定を使用するかどうかを示します。これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。
これは他のプロキシ設定よりも優先されるため、カスタムプロキシ設定を使用するにはProxyAutoDetect をFALSE に設定する必要があります。
HTTP プロキシへの接続には、ProxyServer を参照してください。SOCKS やトンネリングなどの他のプロキシには、FirewallType を参照してください。
HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。
HTTP トラフィックをルートするためのプロキシのホストネームもしくはIP アドレス。HTTP プロキシへの認証には、Sync App はHTTP、Windows(NTLM)、もしくはKerberos 認証タイプを使用することができます。
SOCKS プロキシを経由して接続する、もしくは接続をトンネルするには、FirewallType を参照してください。
デフォルトで、Sync App はsystem プロキシを使います。他のプロキシを使う場合には、ProxyAutoDetect をfalse に設定します。
ProxyServer プロキシが起動しているTCP ポート。
HTTP トラフィックをリダイレクトするHTTP プロキシが実行されているポート。ProxyServer でHTTP プロキシを指定します。その他のプロキシタイプについては、FirewallType を参照してください。
ProxyServer プロキシへの認証で使われる認証タイプ。
この値は、ProxyServer およびProxyPort で指定されるHTTP プロキシに認証するために使われる認証タイプを指定します。
Sync App は、デフォルトでsystem proxy settings を使い、追加での設定が不要です。他のプロキシへの接続をする場合には、ProxyServer およびProxyPort に加え、ProxyAutoDetect をfalse に設定します。認証するには、ProxyAuthScheme を設定し、必要な場合にはProxyUser およびProxyPassword を設定します。
認証タイプは、次のどれかになります。
SOCKS 5 認証のような他の認証タイプを使用するには、FirewallType を参照してください。
ProxyServer プロキシへの認証に使われるユーザー名。
ProxyUser および ProxyPassword オプションは、ProxyServer で指定されたHTTP プロキシに対して接続および認証するために使用されます。
ProxyAuthScheme で使用可能な認証タイプを選択することができます。HTTP 認証を使う場合、これをHTTP プロキシで識別可能なユーザーのユーザー名に設定します。Windows もしくはKerberos 認証を使用する場合、このプロパティを次の形式のどれかでユーザー名に設定します。
user@domain domain\user
ProxyServer プロキシへの認証に使われるパスワード。
このプロパティは、NTLM(Windows)、Kerberos、もしくはHTTP 認証をサポートするHTTP プロキシサーバーに認証するために使われます。HTTP プロキシを指定するためには、ProxyServer およびProxyPort を設定します。認証タイプを指定するためにはProxyAuthScheme を設定します。
HTTP 認証を使う場合、さらにHTTP プロキシにProxyUser およびProxyPassword を設定します。
NTLM 認証を使う場合、Windows パスワードにProxyUser およびProxyPassword を設定します。Kerberos 認証には、これらを入力する必要があります。
SOCKS 5 認証もしくは、トンネリングは、FirewallType を参照してください。
デフォルトで、Sync App はsystem プロキシを使います。他のプロキシに接続する場合には、これをfalse に設定します。
ProxyServer プロキシへの接続時に使用するSSL タイプ。
このプロパティは、ProxyServer で指定されたHTTP プロキシへの接続にSSL を使用するかどうかを決定します。この値は、AUTO、ALWAYS、NEVER、TUNNEL のいずれかです。有効な値は次のとおりです。
AUTO | デフォルト設定。URL がHTTPS URL の場合、Sync App は、TUNNEL オプションを使います。URL がHTTP URL の場合、コンポーネントはNEVER オプションを使います。 |
ALWAYS | 接続は、常にSSL 有効となります。 |
NEVER | 接続は、SSL 有効になりません。 |
TUNNEL | 接続は、トンネリングプロキシを経由します。プロキシサーバーがリモートホストへの接続を開き、プロキシを経由して通信が行われます。 |
ProxyServer 経由での接続が免除される宛先ホスト名またはIP のセミコロン区切りのリスト。
ProxyServer は、このプロパティで定義されたアドレスを除くすべてのアドレスに使用されます。セミコロンを使用してエントリを区切ります。
Sync App は、追加設定なしにデフォルトでシステムのプロキシ設定を使います。この接続のプロキシ例外を明示的に構成するには、ProxyAutoDetect をfalse に設定して、ProxyServer およびProxyPort を設定する必要があります。認証するには、ProxyAuthScheme を設定し、必要な場合にはProxyUser およびProxyPassword を設定します。
ログファイルに含めるコアモジュール。
指定された(';' で区切られた)モジュールのみがログファイルに含まれます。デフォルトではすべてのモジュールが含まれます。
概要はログ ページを参照してください。
このセクションでは、本プロバイダーの接続文字列で設定可能なSchema プロパティの全リストを提供します。
プロパティ | 説明 |
Location | テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリへのパス。 |
BrowsableSchemas | このプロパティは、使用可能なスキーマのサブセットにレポートされるスキーマを制限します。例えば、BrowsableSchemas=SchemaA,SchemaB,SchemaC です。 |
Tables | このプロパティは、使用可能なテーブルのサブセットにレポートされるテーブルを制限します。例えば、Tables=TableA,TableB,TableC です。 |
Views | 使用可能なテーブルのサブセットにレポートされるビューを制限します。例えば、Views=ViewA,ViewB,ViewC です。 |
テーブル、ビュー、およびストアドプロシージャを定義するスキーマファイルを格納するディレクトリへのパス。
Sync App のスキーマファイル(テーブルとビューの場合は.rsd ファイル、ストアドプロシージャの場合は.rsb ファイル)を含むディレクトリへのパス。このフォルダの場所は、実行ファイルの場所からの相対パスにすることができます。Location プロパティは、定義をカスタマイズしたり(例えば、カラム名を変更する、カラムを無視するなど)、新しいテーブル、ビュー、またはストアドプロシージャでデータモデルを拡張する場合にのみ必要です。
指定しない場合、デフォルトの場所は"%APPDATA%\\CData\\Bugzilla Data Provider\\Schema" となり、%APPDATA% はユーザーのコンフィギュレーションディレクトリに設定されます:
このプロパティは、使用可能なスキーマのサブセットにレポートされるスキーマを制限します。例えば、BrowsableSchemas=SchemaA,SchemaB,SchemaC です。
スキーマをデータベースからリストすると、負荷がかかる可能性があります。接続文字列でスキーマのリストを提供すると、 パフォーマンスが向上します。
このプロパティは、使用可能なテーブルのサブセットにレポートされるテーブルを制限します。例えば、Tables=TableA,TableB,TableC です。
テーブルを複数のデータベースからリストすると、負荷がかかる可能性があります。接続文字列でテーブルのリストを提供すると、Sync App のパフォーマンスが向上します。
このプロパティは、作業したいビューがすでにわかっていて、ビューが多すぎる場合に、ビューを自動的にリストする代わりに使用することもできます。
カンマ区切りのリストで使用したいテーブルを指定します。各テーブルは、角かっこ、二重引用符、またはバッククオートを使用してエスケープされた特殊文字列を含む有効なSQL 識別子である必要があります。 例えば、Tables=TableA,[TableB/WithSlash],WithCatalog.WithSchema.`TableC With Space` です。
複数のスキーマまたはカタログを持つデータソースに接続する場合は、複数のカタログやスキーマに存在するテーブル間の曖昧さを避けるため、最後の例のように、このプロパティにテーブルの完全修飾名を指定する必要があることに注意してください。
使用可能なテーブルのサブセットにレポートされるビューを制限します。例えば、Views=ViewA,ViewB,ViewC です。
ビューを複数のデータベースからリストすると、負荷がかかる可能性があります。接続文字列でビューのリストを提供すると、Sync App のパフォーマンスが向上します。
このプロパティは、作業したいビューがすでにわかっていて、ビューが多すぎる場合に、ビューを自動的にリストする代わりに使用することもできます。
カンマ区切りのリストで使用したいビューを指定します。各ビューは、角かっこ、二重引用符、またはバッククオートを使用してエスケープされた特殊文字列を含む有効なSQL 識別子である必要があります。 例えば、Views=ViewA,[ViewB/WithSlash],WithCatalog.WithSchema.`ViewC With Space` です。
複数のスキーマまたはカタログを持つデータソースに接続する場合は、複数のカタログやスキーマに存在するテーブル間の曖昧さを避けるため、最後の例のように、このプロパティにテーブルの完全修飾名を指定する必要があることに注意してください。
このセクションでは、本プロバイダーの接続文字列で設定可能なMiscellaneous プロパティの全リストを提供します。
プロパティ | 説明 |
IncludeCustomFields | Determines if Custom Fields should be included as table columns or not. |
MaxRows | クエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。 |
Other | これらの隠しプロパティは特定のユースケースでのみ使用されます。 |
Pagesize | Bugzilla から返されるページあたりの結果の最大数。 |
PseudoColumns | このプロパティは、テーブルのカラムとして疑似カラムが含まれているかどうかを示します。 |
RowScanDepth | テーブルで利用可能なカラムを探すためにスキャンする行数の最大値。 |
Timeout | タイムアウトエラーがスローされ、処理をキャンセルするまでの秒数。 |
UserDefinedViews | カスタムビューを含むJSON コンフィギュレーションファイルを指すファイルパス。 |
Determines if Custom Fields should be included as table columns or not.
It is possible to create custom fields in Bugzilla. To retrieve their values you can set IncludeCustomFields=true as a connection property. Doing so will list the custom fields created as table columns.
クエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。
クエリで集計またはグループ化を使用しない場合に返される行数を制限します。これにより、設計時にパフォーマンスの問題を回避できます。
これらの隠しプロパティは特定のユースケースでのみ使用されます。
以下にリストされているプロパティは、特定のユースケースで使用可能です。通常のドライバーのユースケースおよび機能では、これらのプロパティは必要ありません。
複数のプロパティをセミコロン区切りリストで指定します。
DefaultColumnSize | データソースがメタデータにカラムの長さを提供しない場合に、文字列フィールドのデフォルトの長さを設定します。デフォルト値は2000です。 |
ConvertDateTimeToGMT | 日時の値を、マシンのローカルタイムではなくGMT グリニッジ標準時に変換するかどうかを決定します。 |
RecordToFile=filename | 基底のソケットデータ転送を指定のファイルに記録します。 |
Bugzilla から返されるページあたりの結果の最大数。
Pagesize プロパティは、Bugzilla から返されるページあたりの結果の最大数に影響を与えます。より大きい値を設定すると、1ページあたりの消費メモリが増える代わりに、パフォーマンスが向上する場合があります。
このプロパティは、テーブルのカラムとして疑似カラムが含まれているかどうかを示します。
Entity Framework ではテーブルカラムでない疑似カラムに値を設定できないため、この設定はEntity Framework で特に便利です。この接続設定の値は、"Table1=Column1, Table1=Column2, Table2=Column3" の形式です。"*=*" のように"*" 文字を使用して、すべてのテーブルとすべてのカラムを含めることができます。
テーブルで利用可能なカラムを探すためにスキャンする行数の最大値。
テーブルのカラムはテーブル行をスキャンすることで決定される必要があります。この値はスキャンされる行数の最大値を設定します。
大きい値を設定すると、パフォーマンスが低下する場合があります。小さい値を設定すると、特にnull データがある場合には、データ型を正しく判定できない場合があります。
タイムアウトエラーがスローされ、処理をキャンセルするまでの秒数。
Timeout が0に設定されている場合は、操作がタイムアウトしません。処理が正常に完了するか、エラー状態になるまで実行されます。
Timeout の有効期限が切れても処理が完了していない場合は、Sync App は例外をスローします。
カスタムビューを含むJSON コンフィギュレーションファイルを指すファイルパス。
ユーザー定義ビューは、UserDefinedViews.json というJSON 形式のコンフィギュレーションファイルで定義されています。Sync App は、このファイルで指定されたビューを自動的に検出します。
また、複数のビュー定義を持ち、UserDefinedViews 接続プロパティを使用して制御することも可能です。このプロパティを使用すると、指定されたビューのみがSync App によって検知されます。
このユーザー定義ビューのコンフィギュレーションファイルは、次のようにフォーマットされています。
次に例を示します。
{ "MyView": { "query": "SELECT * FROM SampleTable_1 WHERE MyColumn = 'value'" }, "MyView2": { "query": "SELECT * FROM MyTable WHERE Id IN (1,2,3)" } }UserDefinedViews 接続プロパティを使用して、JSON コンフィギュレーションファイルの場所を指定します。次に例を示します。
"UserDefinedViews", "C:\\Users\\yourusername\\Desktop\\tmp\\UserDefinedViews.json"