Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Visual Basic 6.0) Google Cloud SQL - Get Instance InformationDemonstrates how to get information about your Cloud SQL instances, including instance summary information, usage data, operation logs, and database logs. For more information, see https://cloud.google.com/sql/docs/mysql/instance-info
' This example assumes the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. ' In this example, Get Google Cloud SQL OAuth2 Access Token, ' the service account access token was saved to a text file. This example fetches the access token from the file.. Dim sbToken As New ChilkatStringBuilder success = sbToken.LoadFile("qa_data/tokens/google_cloud_sql_access_token.txt","utf-8") Dim http As New ChilkatHttp Dim success As Long ' Implements the following CURL command: ' curl -X GET \ ' -H "Authorization: Bearer access-token" \ ' https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id ' Use the following online tool to generate HTTP code from a CURL command ' Convert a cURL Command to HTTP Source Code ' Causes the "Authorization: Bearer "$(gcloud auth print-access-token)" header to be added. http.AuthToken = sbToken.GetAsString() ' Replace "project-id" with your actual Google project ID. ' Replace "instance-id" with your database instance ID, which is the name of your database. (For example, when I created my test database I named it "chilkat", and therefore my instance-id is "chilkat".) Dim sbResponseBody As New ChilkatStringBuilder success = http.QuickGetSb("https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id",sbResponseBody) If (success = 0) Then Debug.Print http.LastErrorText Exit Sub End If Dim jResp As New ChilkatJsonObject success = jResp.LoadSb(sbResponseBody) jResp.EmitCompact = 0 Debug.Print "Response Body:" Debug.Print jResp.Emit() Dim respStatusCode As Long respStatusCode = http.LastStatus Debug.Print "Response Status Code = " & respStatusCode If (respStatusCode = 401) Then Debug.Print "It may be that your access token expired." Debug.Print "Try refreshing the access token by re-fetching it." End If If (respStatusCode >= 400) Then Debug.Print "Response Header:" Debug.Print http.LastHeader Debug.Print "Failed." Exit Sub End If ' Sample JSON response: ' (Sample code for parsing the JSON response is shown below) ' { ' "kind": "sql#instance", ' "state": "RUNNABLE", ' "databaseVersion": "MYSQL_5_7", ' "settings": { ' "authorizedGaeApplications": [ ' ], ' "tier": "db-f1-micro", ' "kind": "sql#settings", ' "pricingPlan": "PER_USE", ' "replicationType": "SYNCHRONOUS", ' "activationPolicy": "ALWAYS", ' "ipConfiguration": { ' "authorizedNetworks": [ ' ], ' "ipv4Enabled": true ' }, ' "locationPreference": { ' "zone": "asia-east1-a", ' "kind": "sql#locationPreference" ' }, ' "dataDiskType": "PD_SSD", ' "backupConfiguration": { ' "startTime": "08:00", ' "kind": "sql#backupConfiguration", ' "enabled": true, ' "pointInTimeEnabled": true ' }, ' "settingsVersion": "13", ' "storageAutoResizeLimit": "0", ' "storageAutoResize": true, ' "dataDiskSizeGb": "10" ' }, ' "etag": "etag-id", ' "ipAddresses": [ ' { ' "type": "PRIMARY", ' "ipAddress": "10.0.0.1" ' } ' ], ' "serverCaCert": { ' "kind": "sql#sslCert", ' "certSerialNumber": "0", ' "cert": "certificate-id", ' "commonName": "C=US,O=Google\\, Inc,CN=Google Cloud SQL Server CA,dnQualifier=dn-qualifier-id", ' "sha1Fingerprint": "sha-id", ' "instance": "instance-id", ' "createTime": "2019-06-28T22:46:35.052Z", ' "expirationTime": "2029-06-25T22:47:35.052Z" ' }, ' "instanceType": "CLOUD_SQL_INSTANCE", ' "project": "project-id", ' "serviceAccountEmailAddress": "service-acct-id@gcp-sa-cloud-sql.iam.gserviceaccount.com", ' "backendType": "SECOND_GEN", ' "selfLink": "https://www.googleapis.com/sql/v1beta4/projects/project-id/instances/instance-id", ' "connectionName": "project-id:region:instance-id", ' "name": "instance-id", ' "region": "asia-east1", ' "gceZone": "asia-east1-a" ' } ' Sample code for parsing the JSON response... ' Use the following online tool to generate parsing code from sample JSON: ' Generate Parsing Code from JSON Dim v_type As String Dim ipAddress As String Dim kind As String kind = jResp.StringOf("kind") Dim state As String state = jResp.StringOf("state") Dim databaseVersion As String databaseVersion = jResp.StringOf("databaseVersion") Dim settingsTier As String settingsTier = jResp.StringOf("settings.tier") Dim settingsKind As String settingsKind = jResp.StringOf("settings.kind") Dim settingsPricingPlan As String settingsPricingPlan = jResp.StringOf("settings.pricingPlan") Dim settingsReplicationType As String settingsReplicationType = jResp.StringOf("settings.replicationType") Dim settingsActivationPolicy As String settingsActivationPolicy = jResp.StringOf("settings.activationPolicy") Dim settingsIpConfigurationIpv4Enabled As Long settingsIpConfigurationIpv4Enabled = jResp.BoolOf("settings.ipConfiguration.ipv4Enabled") Dim settingsLocationPreferenceZone As String settingsLocationPreferenceZone = jResp.StringOf("settings.locationPreference.zone") Dim settingsLocationPreferenceKind As String settingsLocationPreferenceKind = jResp.StringOf("settings.locationPreference.kind") Dim settingsDataDiskType As String settingsDataDiskType = jResp.StringOf("settings.dataDiskType") Dim settingsBackupConfigurationStartTime As String settingsBackupConfigurationStartTime = jResp.StringOf("settings.backupConfiguration.startTime") Dim settingsBackupConfigurationKind As String settingsBackupConfigurationKind = jResp.StringOf("settings.backupConfiguration.kind") Dim settingsBackupConfigurationEnabled As Long settingsBackupConfigurationEnabled = jResp.BoolOf("settings.backupConfiguration.enabled") Dim settingsBackupConfigurationPointInTimeEnabled As Long settingsBackupConfigurationPointInTimeEnabled = jResp.BoolOf("settings.backupConfiguration.pointInTimeEnabled") Dim settingsSettingsVersion As String settingsSettingsVersion = jResp.StringOf("settings.settingsVersion") Dim settingsStorageAutoResizeLimit As String settingsStorageAutoResizeLimit = jResp.StringOf("settings.storageAutoResizeLimit") Dim settingsStorageAutoResize As Long settingsStorageAutoResize = jResp.BoolOf("settings.storageAutoResize") Dim settingsDataDiskSizeGb As String settingsDataDiskSizeGb = jResp.StringOf("settings.dataDiskSizeGb") Dim etag As String etag = jResp.StringOf("etag") Dim serverCaCertKind As String serverCaCertKind = jResp.StringOf("serverCaCert.kind") Dim serverCaCertCertSerialNumber As String serverCaCertCertSerialNumber = jResp.StringOf("serverCaCert.certSerialNumber") Dim serverCaCertCert As String serverCaCertCert = jResp.StringOf("serverCaCert.cert") Dim serverCaCertCommonName As String serverCaCertCommonName = jResp.StringOf("serverCaCert.commonName") Dim serverCaCertSha1Fingerprint As String serverCaCertSha1Fingerprint = jResp.StringOf("serverCaCert.sha1Fingerprint") Dim serverCaCertInstance As String serverCaCertInstance = jResp.StringOf("serverCaCert.instance") Dim serverCaCertCreateTime As String serverCaCertCreateTime = jResp.StringOf("serverCaCert.createTime") Dim serverCaCertExpirationTime As String serverCaCertExpirationTime = jResp.StringOf("serverCaCert.expirationTime") Dim instanceType As String instanceType = jResp.StringOf("instanceType") Dim project As String project = jResp.StringOf("project") Dim serviceAccountEmailAddress As String serviceAccountEmailAddress = jResp.StringOf("serviceAccountEmailAddress") Dim backendType As String backendType = jResp.StringOf("backendType") Dim selfLink As String selfLink = jResp.StringOf("selfLink") Dim connectionName As String connectionName = jResp.StringOf("connectionName") Dim name As String name = jResp.StringOf("name") Dim region As String region = jResp.StringOf("region") Dim gceZone As String gceZone = jResp.StringOf("gceZone") Dim i As Long i = 0 Dim count_i As Long count_i = jResp.SizeOfArray("settings.authorizedGaeApplications") Do While i < count_i jResp.I = i i = i + 1 Loop i = 0 count_i = jResp.SizeOfArray("settings.ipConfiguration.authorizedNetworks") Do While i < count_i jResp.I = i i = i + 1 Loop i = 0 count_i = jResp.SizeOfArray("ipAddresses") Do While i < count_i jResp.I = i v_type = jResp.StringOf("ipAddresses[i].type") ipAddress = jResp.StringOf("ipAddresses[i].ipAddress") i = i + 1 Loop |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.