netdata/netdata

View on GitHub

Showing 1,743 of 2,982 total issues

Similar blocks of code found in 42 locations. Consider refactoring.
Open

func FreeRADIUSTotalProxyAcctUnknownTypes_Gets(p *radius.Packet) (values []FreeRADIUSTotalProxyAcctUnknownTypes, err error) {
    var i uint32
    for _, attr := range _FreeRADIUS_GetsVendor(p, 161) {
        i, err = radius.Integer(attr)
        if err != nil {
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 214..224
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 271..281
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 328..338
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 385..395
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 442..452
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 499..509
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 556..566
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 613..623
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 670..680
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 727..737
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 784..794
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 841..851
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 898..908
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 955..965
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1012..1022
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1069..1079
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1126..1136
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1183..1193
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1240..1250
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1297..1307
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1354..1364
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1411..1421
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1468..1478
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1525..1535
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1582..1592
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1639..1649
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1696..1706
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1753..1763
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1810..1820
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1867..1877
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1924..1934
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1981..1991
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2038..2048
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2095..2105
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2209..2219
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2266..2276
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2323..2333
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2380..2390
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2437..2447
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2592..2602
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2649..2659

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 42 locations. Consider refactoring.
Open

func FreeRADIUSQueueLenAuth_Gets(p *radius.Packet) (values []FreeRADIUSQueueLenAuth, err error) {
    var i uint32
    for _, attr := range _FreeRADIUS_GetsVendor(p, 164) {
        i, err = radius.Integer(attr)
        if err != nil {
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 214..224
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 271..281
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 328..338
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 385..395
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 442..452
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 499..509
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 556..566
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 613..623
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 670..680
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 727..737
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 784..794
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 841..851
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 898..908
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 955..965
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1012..1022
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1069..1079
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1126..1136
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1183..1193
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1240..1250
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1297..1307
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1354..1364
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1411..1421
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1468..1478
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1525..1535
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1582..1592
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1639..1649
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1696..1706
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1753..1763
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1810..1820
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1867..1877
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1924..1934
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1981..1991
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2038..2048
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2095..2105
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2152..2162
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2209..2219
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2266..2276
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2380..2390
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2437..2447
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2592..2602
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2649..2659

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 42 locations. Consider refactoring.
Open

func FreeRADIUSQueueLenAcct_Gets(p *radius.Packet) (values []FreeRADIUSQueueLenAcct, err error) {
    var i uint32
    for _, attr := range _FreeRADIUS_GetsVendor(p, 165) {
        i, err = radius.Integer(attr)
        if err != nil {
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 214..224
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 271..281
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 328..338
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 385..395
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 442..452
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 499..509
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 556..566
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 613..623
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 670..680
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 727..737
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 784..794
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 841..851
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 898..908
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 955..965
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1012..1022
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1069..1079
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1126..1136
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1183..1193
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1240..1250
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1297..1307
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1354..1364
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1411..1421
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1468..1478
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1525..1535
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1582..1592
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1639..1649
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1696..1706
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1753..1763
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1810..1820
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1867..1877
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1924..1934
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1981..1991
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2038..2048
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2095..2105
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2152..2162
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2209..2219
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2266..2276
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2323..2333
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2437..2447
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2592..2602
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2649..2659

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 21 locations. Consider refactoring.
Open

    adfsOAuthClientAuthenticationsChart = module.Chart{
        OverModule: "adfs",
        ID:         "adfs_oauth_client_authentications",
        Title:      "OAuth client authentications",
        Units:      "authentications/s",
Severity: Major
Found in src/go/collectors/go.d.plugin/modules/windows/charts.go and 20 other locations - About 30 mins to fix
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 941..953
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2012..2024
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2075..2087
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2088..2100
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2101..2113
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2114..2126
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2127..2139
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2140..2152
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2153..2165
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2203..2215
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2240..2252
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2265..2277
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3929..3941
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3978..3990
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3991..4003
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4049..4061
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4062..4074
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4075..4087
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4088..4100
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4101..4113

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 21 locations. Consider refactoring.
Open

    hypervVMDeviceIOPSChartTmpl = module.Chart{
        OverModule: "hyperv",
        ID:         "vm_device_%s_operation_read",
        Title:      "VM storage device IOPS",
        Units:      "operations/s",
Severity: Major
Found in src/go/collectors/go.d.plugin/modules/windows/charts.go and 20 other locations - About 30 mins to fix
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 941..953
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2012..2024
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2062..2074
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2075..2087
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2088..2100
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2101..2113
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2114..2126
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2127..2139
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2140..2152
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2153..2165
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2203..2215
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2240..2252
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2265..2277
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3978..3990
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3991..4003
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4049..4061
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4062..4074
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4075..4087
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4088..4100
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4101..4113

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 21 locations. Consider refactoring.
Open

    hypervVswitchExtensionDroppedPacketsChartTmpl = module.Chart{
        OverModule: "hyperv",
        ID:         "vswitch_%s_extensions_dropped_packets_incoming",
        Title:      "Virtual switch extensions dropped packets",
        Units:      "drops/s",
Severity: Major
Found in src/go/collectors/go.d.plugin/modules/windows/charts.go and 20 other locations - About 30 mins to fix
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 941..953
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2012..2024
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2062..2074
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2075..2087
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2088..2100
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2101..2113
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2114..2126
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2127..2139
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2140..2152
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2153..2165
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2203..2215
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2240..2252
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2265..2277
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3929..3941
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3978..3990
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3991..4003
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4049..4061
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4062..4074
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4075..4087
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4088..4100

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 42 locations. Consider refactoring.
Open

func FreeRADIUSTotalAuthResponses_Gets(p *radius.Packet) (values []FreeRADIUSTotalAuthResponses, err error) {
    var i uint32
    for _, attr := range _FreeRADIUS_GetsVendor(p, 132) {
        i, err = radius.Integer(attr)
        if err != nil {
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 214..224
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 271..281
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 328..338
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 385..395
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 442..452
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 556..566
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 613..623
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 670..680
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 727..737
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 784..794
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 841..851
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 898..908
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 955..965
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1012..1022
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1069..1079
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1126..1136
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1183..1193
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1240..1250
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1297..1307
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1354..1364
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1411..1421
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1468..1478
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1525..1535
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1582..1592
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1639..1649
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1696..1706
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1753..1763
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1810..1820
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1867..1877
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1924..1934
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1981..1991
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2038..2048
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2095..2105
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2152..2162
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2209..2219
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2266..2276
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2323..2333
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2380..2390
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2437..2447
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2592..2602
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2649..2659

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 42 locations. Consider refactoring.
Open

func FreeRADIUSTotalAuthMalformedRequests_Gets(p *radius.Packet) (values []FreeRADIUSTotalAuthMalformedRequests, err error) {
    var i uint32
    for _, attr := range _FreeRADIUS_GetsVendor(p, 134) {
        i, err = radius.Integer(attr)
        if err != nil {
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 214..224
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 271..281
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 328..338
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 385..395
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 442..452
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 499..509
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 556..566
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 670..680
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 727..737
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 784..794
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 841..851
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 898..908
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 955..965
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1012..1022
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1069..1079
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1126..1136
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1183..1193
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1240..1250
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1297..1307
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1354..1364
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1411..1421
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1468..1478
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1525..1535
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1582..1592
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1639..1649
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1696..1706
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1753..1763
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1810..1820
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1867..1877
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1924..1934
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1981..1991
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2038..2048
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2095..2105
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2152..2162
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2209..2219
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2266..2276
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2323..2333
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2380..2390
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2437..2447
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2592..2602
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2649..2659

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 42 locations. Consider refactoring.
Open

func FreeRADIUSTotalProxyAuthMalformedRequests_Gets(p *radius.Packet) (values []FreeRADIUSTotalProxyAuthMalformedRequests, err error) {
    var i uint32
    for _, attr := range _FreeRADIUS_GetsVendor(p, 144) {
        i, err = radius.Integer(attr)
        if err != nil {
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 214..224
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 271..281
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 328..338
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 385..395
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 442..452
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 499..509
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 556..566
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 613..623
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 670..680
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 727..737
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 784..794
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 841..851
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 898..908
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 955..965
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1012..1022
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1069..1079
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1126..1136
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1240..1250
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1297..1307
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1354..1364
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1411..1421
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1468..1478
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1525..1535
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1582..1592
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1639..1649
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1696..1706
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1753..1763
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1810..1820
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1867..1877
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1924..1934
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1981..1991
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2038..2048
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2095..2105
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2152..2162
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2209..2219
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2266..2276
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2323..2333
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2380..2390
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2437..2447
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2592..2602
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2649..2659

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 42 locations. Consider refactoring.
Open

func FreeRADIUSTotalProxyAccountingResponses_Gets(p *radius.Packet) (values []FreeRADIUSTotalProxyAccountingResponses, err error) {
    var i uint32
    for _, attr := range _FreeRADIUS_GetsVendor(p, 156) {
        i, err = radius.Integer(attr)
        if err != nil {
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 214..224
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 271..281
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 328..338
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 385..395
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 442..452
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 499..509
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 556..566
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 613..623
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 670..680
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 727..737
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 784..794
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 841..851
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 898..908
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 955..965
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1012..1022
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1069..1079
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1126..1136
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1183..1193
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1240..1250
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1297..1307
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1354..1364
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1411..1421
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1468..1478
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1525..1535
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1582..1592
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1639..1649
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1696..1706
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1753..1763
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1810..1820
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1924..1934
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1981..1991
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2038..2048
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2095..2105
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2152..2162
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2209..2219
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2266..2276
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2323..2333
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2380..2390
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2437..2447
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2592..2602
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2649..2659

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 42 locations. Consider refactoring.
Open

func FreeRADIUSQueueLenProxy_Gets(p *radius.Packet) (values []FreeRADIUSQueueLenProxy, err error) {
    var i uint32
    for _, attr := range _FreeRADIUS_GetsVendor(p, 163) {
        i, err = radius.Integer(attr)
        if err != nil {
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 214..224
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 271..281
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 328..338
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 385..395
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 442..452
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 499..509
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 556..566
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 613..623
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 670..680
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 727..737
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 784..794
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 841..851
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 898..908
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 955..965
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1012..1022
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1069..1079
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1126..1136
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1183..1193
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1240..1250
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1297..1307
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1354..1364
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1411..1421
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1468..1478
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1525..1535
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1582..1592
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1639..1649
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1696..1706
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1753..1763
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1810..1820
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1867..1877
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1924..1934
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1981..1991
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2038..2048
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2095..2105
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2152..2162
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2209..2219
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2323..2333
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2380..2390
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2437..2447
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2592..2602
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2649..2659

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 42 locations. Consider refactoring.
Open

func FreeRADIUSTotalProxyAuthInvalidRequests_Gets(p *radius.Packet) (values []FreeRADIUSTotalProxyAuthInvalidRequests, err error) {
    var i uint32
    for _, attr := range _FreeRADIUS_GetsVendor(p, 145) {
        i, err = radius.Integer(attr)
        if err != nil {
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 214..224
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 271..281
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 328..338
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 385..395
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 442..452
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 499..509
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 556..566
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 613..623
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 670..680
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 727..737
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 784..794
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 841..851
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 898..908
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 955..965
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1012..1022
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1069..1079
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1126..1136
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1183..1193
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1297..1307
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1354..1364
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1411..1421
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1468..1478
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1525..1535
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1582..1592
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1639..1649
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1696..1706
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1753..1763
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1810..1820
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1867..1877
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1924..1934
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1981..1991
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2038..2048
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2095..2105
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2152..2162
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2209..2219
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2266..2276
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2323..2333
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2380..2390
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2437..2447
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2592..2602
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2649..2659

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 21 locations. Consider refactoring.
Open

    adfsExternalAuthenticationsChart = module.Chart{
        OverModule: "adfs",
        ID:         "adfs_external_authentications",
        Title:      "Authentications from external MFA providers",
        Units:      "authentications/s",
Severity: Major
Found in src/go/collectors/go.d.plugin/modules/windows/charts.go and 20 other locations - About 30 mins to fix
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 941..953
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2062..2074
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2075..2087
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2088..2100
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2101..2113
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2114..2126
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2127..2139
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2140..2152
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2153..2165
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2203..2215
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2240..2252
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2265..2277
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3929..3941
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3978..3990
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3991..4003
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4049..4061
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4062..4074
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4075..4087
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4088..4100
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4101..4113

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 21 locations. Consider refactoring.
Open

    adfsOAuthClientPrivKeyJwtAuthenticationsChart = module.Chart{
        OverModule: "adfs",
        ID:         "adfs_oauth_client_privkey_jwt_authentications",
        Title:      "OAuth client private key JWT authentications",
        Units:      "authentications/s",
Severity: Major
Found in src/go/collectors/go.d.plugin/modules/windows/charts.go and 20 other locations - About 30 mins to fix
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 941..953
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2012..2024
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2062..2074
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2075..2087
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2101..2113
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2114..2126
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2127..2139
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2140..2152
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2153..2165
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2203..2215
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2240..2252
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2265..2277
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3929..3941
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3978..3990
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3991..4003
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4049..4061
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4062..4074
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4075..4087
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4088..4100
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4101..4113

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 21 locations. Consider refactoring.
Open

    adfsOAuthClientSecretBasicAuthenticationsChart = module.Chart{
        OverModule: "adfs",
        ID:         "adfs_oauth_client_secret_basic_authentications",
        Title:      "OAuth client secret basic authentications",
        Units:      "authentications/s",
Severity: Major
Found in src/go/collectors/go.d.plugin/modules/windows/charts.go and 20 other locations - About 30 mins to fix
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 941..953
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2012..2024
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2062..2074
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2075..2087
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2088..2100
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2114..2126
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2127..2139
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2140..2152
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2153..2165
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2203..2215
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2240..2252
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2265..2277
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3929..3941
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3978..3990
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3991..4003
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4049..4061
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4062..4074
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4075..4087
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4088..4100
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4101..4113

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 42 locations. Consider refactoring.
Open

func FreeRADIUSTotalAccountingRequests_Gets(p *radius.Packet) (values []FreeRADIUSTotalAccountingRequests, err error) {
    var i uint32
    for _, attr := range _FreeRADIUS_GetsVendor(p, 148) {
        i, err = radius.Integer(attr)
        if err != nil {
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 214..224
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 271..281
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 328..338
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 385..395
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 442..452
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 499..509
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 556..566
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 613..623
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 670..680
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 727..737
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 784..794
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 841..851
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 898..908
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 955..965
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1012..1022
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1069..1079
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1126..1136
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1183..1193
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1240..1250
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1297..1307
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1354..1364
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1468..1478
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1525..1535
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1582..1592
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1639..1649
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1696..1706
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1753..1763
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1810..1820
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1867..1877
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1924..1934
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1981..1991
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2038..2048
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2095..2105
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2152..2162
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2209..2219
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2266..2276
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2323..2333
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2380..2390
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2437..2447
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2592..2602
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2649..2659

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 42 locations. Consider refactoring.
Open

func FreeRADIUSTotalProxyAuthDuplicateRequests_Gets(p *radius.Packet) (values []FreeRADIUSTotalProxyAuthDuplicateRequests, err error) {
    var i uint32
    for _, attr := range _FreeRADIUS_GetsVendor(p, 143) {
        i, err = radius.Integer(attr)
        if err != nil {
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 214..224
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 271..281
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 328..338
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 385..395
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 442..452
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 499..509
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 556..566
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 613..623
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 670..680
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 727..737
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 784..794
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 841..851
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 898..908
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 955..965
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1012..1022
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1069..1079
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1183..1193
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1240..1250
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1297..1307
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1354..1364
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1411..1421
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1468..1478
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1525..1535
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1582..1592
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1639..1649
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1696..1706
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1753..1763
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1810..1820
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1867..1877
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1924..1934
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1981..1991
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2038..2048
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2095..2105
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2152..2162
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2209..2219
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2266..2276
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2323..2333
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2380..2390
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2437..2447
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2592..2602
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2649..2659

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 42 locations. Consider refactoring.
Open

func FreeRADIUSTotalProxyAcctInvalidRequests_Gets(p *radius.Packet) (values []FreeRADIUSTotalProxyAcctInvalidRequests, err error) {
    var i uint32
    for _, attr := range _FreeRADIUS_GetsVendor(p, 159) {
        i, err = radius.Integer(attr)
        if err != nil {
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 214..224
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 271..281
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 328..338
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 385..395
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 442..452
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 499..509
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 556..566
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 613..623
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 670..680
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 727..737
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 784..794
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 841..851
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 898..908
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 955..965
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1012..1022
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1069..1079
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1126..1136
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1183..1193
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1240..1250
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1297..1307
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1354..1364
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1411..1421
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1468..1478
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1525..1535
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1582..1592
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1639..1649
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1696..1706
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1753..1763
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1810..1820
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1867..1877
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1924..1934
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1981..1991
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2095..2105
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2152..2162
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2209..2219
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2266..2276
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2323..2333
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2380..2390
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2437..2447
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2592..2602
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2649..2659

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 42 locations. Consider refactoring.
Open

func FreeRADIUSQueuePPSOut_Gets(p *radius.Packet) (values []FreeRADIUSQueuePPSOut, err error) {
    var i uint32
    for _, attr := range _FreeRADIUS_GetsVendor(p, 182) {
        i, err = radius.Integer(attr)
        if err != nil {
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 214..224
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 271..281
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 328..338
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 385..395
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 442..452
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 499..509
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 556..566
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 613..623
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 670..680
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 727..737
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 784..794
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 841..851
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 898..908
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 955..965
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1012..1022
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1069..1079
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1126..1136
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1183..1193
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1240..1250
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1297..1307
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1354..1364
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1411..1421
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1468..1478
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1525..1535
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1582..1592
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1639..1649
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1696..1706
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1753..1763
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1810..1820
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1867..1877
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1924..1934
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 1981..1991
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2038..2048
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2095..2105
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2152..2162
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2209..2219
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2266..2276
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2323..2333
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2380..2390
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2437..2447
src/go/collectors/go.d.plugin/modules/freeradius/api/dictionary.go on lines 2592..2602

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 21 locations. Consider refactoring.
Open

    hypervVswitchBroadcastPacketsChartTmpl = module.Chart{
        OverModule: "hyperv",
        ID:         "vswitch_%s_broadcast_packets",
        Title:      "Virtual switch broadcast packets",
        Units:      "packets/s",
Severity: Major
Found in src/go/collectors/go.d.plugin/modules/windows/charts.go and 20 other locations - About 30 mins to fix
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 941..953
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2012..2024
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2062..2074
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2075..2087
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2088..2100
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2101..2113
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2114..2126
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2127..2139
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2140..2152
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2153..2165
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2203..2215
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2240..2252
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 2265..2277
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3929..3941
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3978..3990
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 3991..4003
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4049..4061
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4075..4087
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4088..4100
src/go/collectors/go.d.plugin/modules/windows/charts.go on lines 4101..4113

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 101.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Severity
Category
Status
Source
Language