// This is an automatically generated code sample.
// To make this code sample work in your Oracle Cloud tenancy,
// please replace the values for any parameters whose current values do not fit
// your use case (such as resource IDs, strings containing ‘EXAMPLE’ or ‘unique_id’, and
// boolean, number, and enum parameters with values not fitting your use case).

package main

import (
	"context"
	"fmt"
	"time"

	"github.com/oracle/oci-go-sdk/v65/common"
	"github.com/oracle/oci-go-sdk/v65/example/helpers"
	"github.com/oracle/oci-go-sdk/v65/opsi"
)

func ExampleIngestSqlStats() {
	// Create a default authentication provider that uses the DEFAULT
	// profile in the configuration file.
	// Refer to <see href="https://docs.cloud.oracle.com/en-us/iaas/Content/API/Concepts/sdkconfig.htm#SDK_and_CLI_Configuration_File>the public documentation</see> on how to prepare a configuration file.
	client, err := opsi.NewOperationsInsightsClientWithConfigurationProvider(common.DefaultConfigProvider())
	helpers.FatalIfError(err)

	// Create a request and dependent object(s).

	req := opsi.IngestSqlStatsRequest{Id: common.String("ocid1.test.oc1..<unique_ID>EXAMPLE-id-Value"),
		IfMatch: common.String("EXAMPLE-ifMatch-Value"),
		IngestSqlStatsDetails: opsi.IngestSqlStatsDetails{Items: []opsi.SqlStats{opsi.SqlStats{InstanceName: common.String("EXAMPLE-instanceName-Value"),
			AvoidedExecutions:          common.Int64(631),
			DiskReads:                  common.Int64(883),
			PxServersExecutions:        common.Int64(480),
			DeltaExecsRank:             common.Int64(589),
			ElapsedTimeInUs:            common.Int64(808),
			OptimizerCost:              common.Int64(185),
			VersionCount:               common.Int64(139),
			AvgHardParseTimeInUs:       common.Int64(612),
			EndOfFetchCount:            common.Int64(109),
			ForceMatchingSignature:     common.String("EXAMPLE-forceMatchingSignature-Value"),
			BufferGets:                 common.Int64(657),
			JavaExecTimeInUs:           common.Int64(733),
			Service:                    common.String("EXAMPLE-service-Value"),
			DeltaCpuTime:               common.Int64(241),
			Executions:                 common.Int64(125),
			SqlPlanBaseline:            common.String("EXAMPLE-sqlPlanBaseline-Value"),
			UsersExecuting:             common.Int64(157),
			ClusterWaitTimeInUs:        common.Int64(722),
			PhysicalWriteBytes:         common.Int64(106),
			TotalSharableMem:           common.Int64(997),
			UsersOpening:               common.Int64(893),
			ConcurrencyWaitTimeInUs:    common.Int64(638),
			DeltaIoRank:                common.Int64(788),
			IoInterconnectBytes:        common.Int64(7),
			Sorts:                      common.Int64(888),
			CpuTimeInUs:                common.Int64(523),
			DirectReads:                common.Int64(866),
			Loads:                      common.Int64(583),
			ObsoleteCount:              common.Int64(278),
			PhysicalReadRequests:       common.Int64(342),
			PlanHashValue:              common.Int64(924),
			SqlIdentifier:              common.String("EXAMPLE-sqlIdentifier-Value"),
			TimeCollected:              &common.SDKTime{Time: time.Now()},
			ExactMatchingSignature:     common.String("EXAMPLE-exactMatchingSignature-Value"),
			Invalidations:              common.Int64(720),
			PhysicalReadBytes:          common.Int64(960),
			WtHarmonicSum:              common.Int64(901),
			Fetches:                    common.Int64(829),
			IoCellOffloadEligibleBytes: common.Int64(635),
			IoCellOffloadReturnedBytes: common.Int64(0),
			LastActiveTime:             common.String("EXAMPLE-lastActiveTime-Value"),
			PlsqlExecTimeInUs:          common.Int64(764),
			DeltaExecutionCount:        common.Int64(123),
			PhysicalWriteRequests:      common.Int64(75),
			SqlPatch:                   common.String("EXAMPLE-sqlPatch-Value"),
			UserIoWaitTimeInUs:         common.Int64(280),
			DeltaIoBytes:               common.Int64(543),
			IoCellUncompressedBytes:    common.Int64(382),
			ParseCalls:                 common.Int64(125),
			RowsProcessed:              common.Int64(888),
			Action:                     common.String("EXAMPLE-action-Value"),
			DeltaCpuRank:               common.Int64(823),
			DirectWrites:               common.Int64(203),
			SharableMem:                common.Int64(761),
			TypeCheckMem:               common.Int64(833),
			ApplicationWaitTimeInUs:    common.Int64(943),
			ChildNumber:                common.Int64(377),
			CommandType:                common.Int64(577),
			HarmonicSum:                common.Int64(729),
			SharableMemRank:            common.Int64(197),
			TotalSqlCount:              common.Int64(883),
			FullPlanHashValue:          common.String("EXAMPLE-fullPlanHashValue-Value"),
			SerializableAborts:         common.Int64(59),
			SqlProfile:                 common.String("EXAMPLE-sqlProfile-Value"),
			Module:                     common.String("EXAMPLE-module-Value")}}},
		OpcRequestId:  common.String("0Y5FXI5B5XPWYEX9W2BQ<unique_ID>"),
		OpcRetryToken: common.String("EXAMPLE-opcRetryToken-Value"),
		DatabaseId:    common.String("ocid1.test.oc1..<unique_ID>EXAMPLE-databaseId-Value")}

	// Send the request using the service client
	resp, err := client.IngestSqlStats(context.Background(), req)
	helpers.FatalIfError(err)

	// Retrieve value from the response.
	fmt.Println(resp)
}