今回はスクリプトの例として、Synitiのコンソールから参照可能なレプリケーションの最新の実行件数を取得するAPIを紹介します。
SynitiではC#やVBの各APIを使用してレプリケーションを制御することが可能です。
開発環境の準備については以下をご参照ください。
API(C#, VB, C++)の開発環境構築手順
参考:外部からレプリケーションやグループを開始・停止するサンプルC#プログラム
参考:APIからリフレッシュを実行するサンプルスクリプト[C#]
実行件数を取得するには、Synitiのインストールフォルダにある“C:\Program Files\Syniti\Data Replication V9\providers.xml”も“プロジェクト名\bin\Debug”にコピーする必要があります(開発環境構築手順を参照)。
今回取得するのはコンソールの以下で表示される箇所です。
using System;
using HiTSoftware.DBMoto.Application;
using HiTSoftware.DBMoto.ObjectModel;
namespace APISamples
{
class SampleRefresh
{
static void Main(string[] args)
{
DBMotoApplication dbmApp = null;
IServer dbmServer = null;
IMetadata currentMetadata = null;
try
{
// 初期設定、サーバ接続
dbmApp = DBMotoApplication.Instance;
dbmServer = dbmApp.Servers["local"];
dbmServer.Connect();
// カレントメタデータのロード
currentMetadata = dbmServer.Metadatas.DefaultMetadata;
currentMetadata.Load(true);
// レプリケーション名を指定
IReplication repl = currentMetadata.Replications["レプリケーション名"];
// 最終結果
Console.WriteLine(repl.ReplLastExit);
// 失敗したレコード数
Console.WriteLine(repl.Forth.FailedRecords);
// 成功したレコード数
Console.WriteLine(repl.Forth.ProcessedRecords);
// 総レコード数
Console.WriteLine(repl.Forth.TotalRecords);
}
catch (Exception e)
{
Console.WriteLine(e);
}
finally
{
if (currentMetadata != null)
{
currentMetadata.Unload();
}
if (dbmServer != null)
{
dbmServer.Disconnect();
}
if (dbmApp != null)
{
dbmApp.Dispose();
}
}
}
}
}
関連したトピックス
- APIからリフレッシュを実行するサンプルスクリプト[C#] [Syniti DR (DBMoto)]
- APIからレプリケーション結果の検証やデータ整合を実行するサンプルスクリプト[C#] [Syniti DR (DBMoto)]
- [DBMoto API]外部からレプリケーションやグループを開始・停止するサンプルC#プログラム
- [DBMoto]API(C#, VB, C++)の開発環境構築手順 ~APIを使用してバッチからジョブを制御~
- MySQLへのレプリケーションで “Loading local data is disabled” エラーとなる場合の対処法
- Syniti Data Replication (DBMoto) の監視方法について
- DBMotoからSyniti Data Replicationへのアップグレード方法
- DBMoto[Syniti]の技術お問合せ時に必要な情報
- [DBMoto/SynitiDR]Ritmoトレース取得手順(AS/400, z/OS, Linux, AIX, Windows向けDB2)
- データ分析基盤へもSyniti Data Replication(旧DBMoto)で簡単レプリケーション! Google BigQueryへの接続方法