日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

php小編蘋果為您帶來了關于AWS Golang SDK v2的介紹。如果您正在使用Go語言編寫AWS腳本,您可能想要向腳本中添加一些自定義的函數以增強其功能。本文將向您展示如何使用AWS Golang SDK v2向Go AWS腳本中添加函數,讓您的腳本更加強大和靈活。無論您是初學者還是有經驗的開發人員,都能從本文中獲得有用的技巧和指導。讓我們一起來探索吧!

問題內容

嘗試將腳本的每個部分分成函數,以便稍后使用輸出。
嘗試將實例傳遞給 printvolumesinfo 函數時,無法使該部分工作。

[]instanceblockdevicemapping 是 instance 結構的一部分,但我不確定使用什么作為函數的輸入。

`

package main

import (
    "context"
    "fmt"

    "github.com/aws/aws-sdk-go-v2/config"
    "github.com/aws/aws-sdk-go-v2/service/ec2"
)

var client *ec2.Client


func init() {
    cfg, err := config.LoadDefaultConfig(context.TODO())
    if err != nil {
        panic("configuration error, " + err.Error())
    }
    client = ec2.NewFromConfig(cfg)

}

func printVolumesInfo(volumes []ec2.InstanceBlockDeviceMapping) {
    for _, b := range volumes {
        fmt.Println("   " + *b.DeviceName)
        fmt.Println("   " + *b.Ebs.VolumeId)
    }
}

func main() {
    parms := &ec2.DescribeInstancesInput{}
    result, err := client.DescribeInstances(context.TODO(), parms)

    if err != nil {
        fmt.Println("Error calling ec2: ", err)
        return
    }

    for _, r := range result.Reservations {
        fmt.Println("Reservation ID: " + *r.ReservationId)
        fmt.Println("Instance IDs:")
        for _, i := range r.Instances {
            fmt.Println("   " + *i.InstanceId)
            printVolumesInfo(i.InstanceBlockDeviceMapping)
        }
    }
}

登錄后復制

`

收到錯誤:
./main.go:74:37:未定義:ec2.instanceblockdevicemapping

嘗試使用不同的參數,包括[]instanceblockdevicemapping和blockdevicemapping。此外,還使用了 ec2 和客戶端作為值。

解決方法

檢查文檔:https://www.php.cn/link/421b0ea70ab7fd681ae63a8f12695199

該字段稱為 BlockDeviceMappings。并且類型 InstanceBlockDeviceMapping 位于包 github.com/aws/aws-sdk-go-v2/service/ec2/types 中,而不是位于 ec2 包中。

    將 github.com/aws/aws-sdk-go-v2/service/ec2/types` 添加到您的導入
    將函數 printVolumes 的參數類型更改為 volumes []ec2.InstanceBlockDeviceMapping

    將該函數調用為 printVolumesInfo(i.BlockDeviceMappings)

分享到:
標簽:Go語言
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定